小编bra*_*ins的帖子

JUnit @Rule ExpectedException

我一直在尝试使用 JUnit 预期的异常来验证我自己的应用程序异常,但是每当我尝试使用它时,编译器都会抱怨有一个未捕获的异常。

@Rule public ExpectedException invalidInputException1= ExpectedException.none();
@Test (expected = WarehouseException.class)
public void testRunProblem_withInvalidInput1() {
    System.out.println("Warehouse Problem: "+INVALID_INPUT_EXAMPLE1);
    Warehouse instance = new Warehouse();
    instance.setDefault();
    invalidInputException1.expect(WarehouseException.class);
    invalidInputException1.expectMessage("ERROR - INVALID INPUT: "+INVALID_INPUT_EXAMPLE1+Errors.INVALID_INPUT_TEXT_EMPTY);


    throw new WarehouseException("");
}
Run Code Online (Sandbox Code Playgroud)

问题发生在throw new WarehouseException("")它只是抱怨以下内容的地方:

在此处输入图片说明

关于该方法应该通过 JUnit Javadocs 处理异常这一事实的进一步辩论使我尝试了所问的问题,结果如下:

在此处输入图片说明

在此处输入图片说明

我能想到的所有错误是 Java 在 JUnit 可以访问它以评估它之前处理异常,从而忽略了我期望在测试期间出现异常的事实。

java error-handling junit

2
推荐指数
1
解决办法
5520
查看次数

标签 统计

error-handling ×1

java ×1

junit ×1