有没有更好的方法来断言JUnit5中的方法抛出异常
目前,我必须使用@Rule来验证我的测试是否抛出异常,但这不适用于我希望在测试中有多个方法抛出异常的情况
您可以使用assertThrows(),允许您在同一测试中测试多个异常。在Java8中支持lambdas,这是在JUnit中测试异常的规范方法
根据JUnit文档
导入静态org.junit.jupiter.api.Assertions.assertThrows;
@试验
无效例外测试(){
MyException抛出=assertThrows(
MyException.class,
()->;myObject.doThing(),
&“期望doThing()抛出,但它没有”;
);
assertTrue(抛出.getMessage().contains(";Stuff";);
}