Why does testng depend on junit?

Viewed 652

testng brings junit to project as transitive Maven dependency. Isn't it supposed to be a replacement for junit?

from mvn dependency:tree:

[INFO] +- org.testng:testng:jar:6.9.6:test
[INFO] |  \- junit:junit:jar:4.10:test
[INFO] |     \- org.hamcrest:hamcrest-core:jar:1.1:test

Seriously, why? This causes constant pains because IDE offers to import both @Test annotations, they are almost identical in use, leading to having both junit and testng tests in project.

Is it safe to exclude junit transitive dependency? What might break?

3 Answers
Related