在DAO班

catch (Exception e) {

        throw new DaoException(e);
}


初级班

@Test
public void testClass() throws DaoException {
    try {
        doThrow(Exception.class).when(testDAO).getTestData();
        testDAO.getTestData();
    } catch (Exception e) {
        e.printStackTrace();

    }

}


无法涵盖DaoException。请您帮我涵盖JUNIT中的DAOException。

最佳答案

您不应将其放在JUnit的try catch块中。
看起来您想验证是否抛出了DaoException类。

由于您已经在使用JUnit 4,因此其语法如下:

@Test(expected=DaoException.class)
public void testClass() {
    doThrow(Exception.class).when(testDAO).getTestData();
    testDAO.getTestData();
}


上面的代码段如果抛出DaoException,则将通过测试。

关于java - JUnit异常处理测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38785736/

10-11 01:07