Я пытаюсь протестировать класс в проекте Spring. Я хотел бы внести как можно больше изменений в тестовый класс по сравнению с классом dao, чтобы мне не приходилось повторно тестировать всевозможные вещи из-за изменения.
Класс, с которым я работаю, имеет переменную класса JdbcTemplate template
, экземпляр которой создается следующим образом:
setJdbcTemplate(DataSource dataSource) {
this.template = new JdbcTemplate(dataSource);
}
Метод, который я хотел бы протестировать, заставляет template.query(<code>)
запускать определенный SQL-запрос и возвращать результаты в список.
Я создал следующее в своем тестовом примере, но я не уверен, как его использовать. Могу ли я заставить следующий код возвращать определенный список строк, используя Mockito?
DataSource mockedDataSrc = Mockito.mock(DataSource.class);
customerClassDao.setJdbcTemplate(mockedDataSrc);
Могу ли я каким-то образом использовать when
или другую команду, чтобы установить, что я хочу вернуть в вызов .query
JdbcTemplate?