2016-08-05 4 views
1

В DAO классаJUnit Обработка исключений Тест

catch (Exception e) { 

     throw new DaoException(e); 
} 

В Junit Класс

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

    } 

} 

Невозможно покрыть DaoException.Could пожалуйста, помогите мне, чтобы покрыть DAOException в JUnit.

+0

Вы не можете отправить плохие/неправильные данные, чтобы заставить исключение? –

+0

Что такое код метода getTestData? –

ответ

2

Вы НЕ ДОЛЖНЫ вложить его в блок try catch в вашем JUnit. Похоже, вы хотите проверить, был ли запущен класс DaoException.

Поскольку вы уже используете JUnit 4, ниже синтаксис для этого:

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

Сниппет выше будет пройти тест, если он бросает DaoException.