Das sind meine TestfälleStopp JUnit-Test in @Before Verfahren ohne
class Mother {
@Before
public void setUp() {
if (!this.getClass().isAnnotatedWith("Version20")) { // pseudo code
/*
* stop this test without failing!
*/
}
// further setup
}
}
@Version20
class Child extends Mother {
@Test
public void test() {
// run only when Version == 20
}
}
Ist es möglich, den Test in Kind in der @Before Methode der Mutter zu stoppen, ohne versagen oder assertTrue (false)?
bearbeiten: Ich habe mehr Versionen @ Version19, @ Version18 usw. Meine Software liest eine Konfigurationsdatei und gibt das Ergebnis aus Einige Tests sind nur für spezielle Versionen gültig. Ich mag nicht die Versionsprüfung im Testverfahren machen, weil ich eine Menge von kleinen Tests habe und Code-Duplizierung nicht
Warum nicht einfach Verwenden Sie '@ ignore', wenn Sie die Tests trotzdem kommentieren wollen? – weltraumpirat
Wie fügt man den Check für Version20 innerhalb der Testmethode hinzu? –
mögliches Duplikat von [Bedingt ignorierende Tests in JUnit 4] (http://stackoverflow.com/questions/1689242/conditional-ignoring-tests-in-junit-4) – oers