在Junit5中,如果没有jupiter,我们可以使用assertThrows方法来断言抛出异常。
assertThrows方法是Junit5中的一个断言方法,用于验证代码是否会抛出指定的异常。它接受两个参数:期望的异常类型和一个可执行的Lambda表达式。在Lambda表达式中,我们可以调用待测试的方法,并在其中抛出异常。
以下是使用assertThrows方法来断言抛出异常的示例代码:
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertThrows;
public class MyTest {
@Test
public void testException() {
assertThrows(MyException.class, () -> {
// 调用待测试的方法,期望抛出MyException异常
throw new MyException("This is an exception.");
});
}
}
class MyException extends Exception {
public MyException(String message) {
super(message);
}
}
在上面的示例中,我们定义了一个测试方法testException。在该方法中,我们使用assertThrows方法来断言抛出MyException异常。在Lambda表达式中,我们抛出了一个MyException异常。
如果待测试的方法没有抛出指定的异常,或者抛出了其他异常,assertThrows方法会抛出AssertionFailedError,并提示断言失败。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)
腾讯云云服务器(CVM)是一种弹性计算服务,提供了可靠、安全、灵活的云端计算能力。您可以根据自己的需求选择不同配置的云服务器实例,满足不同规模和业务需求的应用场景。
产品介绍链接地址:https://cloud.tencent.com/product/cvm
领取专属 10元无门槛券
手把手带您无忧上云