Dans JUnit, tester si une exception spécifique est levée peut être réalisé de plusieurs manières.
L'annotation @Test prend désormais en charge l'attribut attendu, ce qui vous permet de spécifier l'exception attendue tapez :
@Test(expected = IndexOutOfBoundsException.class) public void testIndexOutOfBoundsException() { ArrayList emptyList = new ArrayList(); Object o = emptyList.get(0); }
Les bibliothèques d'assertions tierces comme AssertJ et Google Truth fournissent une syntaxe plus concise pour les tests d'exception :
// AssertJ assertThatThrownBy(() -> foo.doStuff()).isInstanceOf(IndexOutOfBoundsException.class); // Google Truth assertWithMessage("Expected IndexOutOfBoundsException").thatExceptionOfType(IndexOutOfBoundsException.class).isThrownBy(() -> foo.doStuff());
Pour JUnit 4.12 et versions antérieures, il existe plusieurs options :
Référez-vous à la FAQ-test JUnit pour plus de détails sur ces options.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!