Возврат ложного метода: отображение входных аргументов
При тестировании программного обеспечения может быть полезно, чтобы имитируемые методы возвращали аргументы, которые были переданы их. Такое поведение может быть особенно полезно при проверке взаимодействий или тестировании потока данных через систему.
Для версий Mockito 1.9.5 и выше эту функциональность можно реализовать с помощью лямбда-выражений:
when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);
В этом случае параметр i представляет экземпляр InvocationOnMock, который обеспечивает доступ к аргументы, передаваемые в имитируемый метод.
Для более ранних версий Mockito требуется собственный ответ:
when(mock.myFunction(anyString())).thenAnswer(new Answer() {
@Override
public String answer(InvocationOnMock invocation) throws Throwable {
Object[] args = invocation.getArguments();
return (String) args[0];
}
});
Используя этот подход, макет вернет ту же строку, которая была передана в myFunction().
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3