#mockito #aem #junit5
#mockito #aem #junit5
Вопрос:
Как мне покрыть блок catch для методов, которые возвращают void в junit5 и mockito.
упомянутый ниже метод дампа возвращает void и вызывает исключения RepositoryException и JSONException.
tidyJosnItemWrite.дамп(узел, StringWriter, -1);
Ответ №1:
Вам нужно написать новый тестовый пример, как показано ниже.
@Test
void testGetJson {
doThrow(new RepositoryException()).when(tidayJsonItemWriter).dump(Mockito.any(), Mockito.any(), Mockito.any());
ctx.addModelsForClasses(Aem.class);
ctx.getJson(node, tidyJosnItemWriter);
}
Комментарии:
1. не работает, так как запрашивает выдачу исключения в сигнатуре метода, и после выдвижения исключения появляется другая ошибка «тип void здесь не требуется»
2. Какой тип возвращаемого
dump
метода?3. возвращаемый тип — void.
4. Я обновил ответ, что касается метода void, то издевательство отличается
5. Теперь получаем исключение нулевого указателя в строке doThrow с сообщением «Здесь обнаружено несоответствие неуместных или неправильно использованных аргументов».