JUnit - 指定测试对其他测试的依赖关系(不跳过任何一个)?
2022-08-31 16:28:06
我们的工具包有超过 15000 个 JUnit 测试,如果其他测试失败,许多测试都会失败。例如,如果方法X.foo()使用 Y.bar()中的功能,而YTest.testBar()失败,那么XTest.testFoo()也将失败。显然,XTest.testFoo() 也可能因为 X.foo() 特有的问题而失败。
虽然这很好,我仍然希望两个测试都运行,但如果可以用指向YTest.testBar()的XTest.testFoo()来注释测试依赖关系,那就太好了。通过这种方式,人们可以立即看到X.foo()使用的哪些功能也失败了,什么没有。
在 JUnit 或其他地方是否有这样的注释?像这样:
public XTest {
@Test
@DependsOn(method=org.example.tests.YTest#testBar)
public void testFoo() {
// Assert.something();
}
}