Наш инструментарий имеет более 15000 JUnit тестов, и многие тесты, как известно, терпят неудачу, если какой-либо другой тест выходит из строя. Например, если метод X.foo() использует функциональные возможности из Y.bar() и YTest.testBar(), то XTest.testFoo() не будет работать. Очевидно, что XTest.testFoo() также может завершиться ошибкой из-за проблем, специфичных для X.foo().
Пока это нормально, и я все же хочу, чтобы оба теста выполнялись, было бы неплохо, если бы можно было аннотировать зависимость теста от XTest.testFoo(), указывающую на YTest.testBar(). Таким образом, можно сразу увидеть, какая функциональность, используемая X.foo(), также терпит неудачу, а что нет.
Имеется ли такая аннотация в JUnit или в другом месте? Что-то вроде:
public XTest {
@Test
@DependsOn(method=org.example.tests.YTest#testBar)
public void testFoo() {
// Assert.something();
}
}