JUnit i TestNG umožňují pomocí parametru timeout anotace @Test nastavit podmínku testu tak, aby test, pokud má být úspěšný, proběhl do určité doby (definované v milisekundách). V případě, že test trvá déle, jeho běh je ukončen a test je označen jako neúspěšný (failure).
Metoda, která se bude testovat.
public void longMethod() {
for (int i = 0; i < 1_000_000; i++) {
System.out.println("myMethod");
}
}
Test.
@Test(timeout=1000)
public void longMethodTest() {
longMethod();
}
Kód je stený jak pro JUnit tak pro TestNG. Pro JUnit test se používá anotace org.junit.Test a pro TestNG org.testng.annotations.Test. Pokud bude výše uvedený test trvat déle jak 1000 milisekund, bude označen jako neúspěšný.