JUnit 5 の例外的な例外アサーション
JUnit 5 では、assertThrows( の導入により、メソッドが例外をスローするというアサートが簡素化されました。 )。このメソッドは、特に同じテスト内で複数の例外が予想される場合に、例外の動作を検証するためのより簡潔で便利な方法を提供します。
以前、開発者は例外をチェックするために @Rule アノテーションに依存していましたが、このアプローチには制限がありました。複数の例外が関係する場合。一方、assertThrows() では、柔軟でカスタマイズ可能な例外テストが可能です。
Java 8 ラムダを活用することで、assertThrows() を使用すると、開発者は簡潔で表現力豊かなテスト アサーションを作成できます。
import static org.junit.jupiter.api.Assertions.assertThrows; @Test void exceptionTesting() { MyException thrown = assertThrows( MyException.class, () -> myObject.doThing(), "Expected doThing() to throw, but it didn't" ); assertTrue(thrown.getMessage().contains("Stuff")); }
この例では、assertThrows() を使用して、 doThing() メソッドが呼び出されたときに MyException をスローするかどうかをチェックします。 2 番目の引数として渡されるラムダ式は、例外をスローすると予想されるコードを定義します。 3 番目の引数は、アサーションが失敗した場合に表示されるオプションのメッセージを提供します。
assertThrows() を使用すると、開発者は例外テスト コードを合理化し、単一のテスト内で複数の例外を簡単にアサートし、明確で有益な情報を提供できます。アサーションが失敗した場合のエラー メッセージ。
以上がJUnit 5 の「assertThrows()」は例外アサーション テストをどのように簡素化しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。