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ý.