Junit没有捕获文件未找到异常

时间:2012-10-10 04:28:01

标签: java junit

@Test(expected=FileNotFoundException.class)
public void downloadExcelTest() {
    stub(mockRoomService.getRoomByCode("ICU5")).toReturn(ICU5);
    stub(mockRS.makeExcel(anyInt(), any(Room.class))).toReturn("FILE_DOES_NOT_EXIST.xls");
    rc.downloadExcel(mockHTTP, 1, "ICU5", mockM);
}

所以我正在尝试进行junit测试以检查异常,但它似乎没有捕获异常。当我运行测试时,它表示没有发生预期的异常,但控制台中出现以下错误。

java.io.FileNotFoundException: FILE_DOES_NOT_EXIST.xls (The system cannot find the file specified)

我的语法错了还是别的?

2 个答案:

答案 0 :(得分:2)

如果在方法中捕获到异常,Junit将不会检测到异常。您需要从downloadExcel中抛出异常,或者找到另一种方法来通知调用方法错误。

答案 1 :(得分:0)

public void downloadExcel() throws IOException {
    try{
        ...
    }
    catch (NullPointerException e) { 
        throw new NullPointerException("Null exception"); 
    }
}