#java #testing #easymock
#java #тестирование #easymock
Вопрос:
Используя EasyMock, как мне указать возвращаемый «AnyObject»? Я получаю исключение, если пытаюсь использовать « .addReturns(anyObject())
«.
Или есть способ просто ослабить требования EasyMock и просто сказать, что все в порядке, если вы вызываете этот дополнительный метод?
В принципе, моя функция вызывает HttpServletResponse.getWriter()
, и мне действительно все равно, что она вызывает это или что она возвращает.
Ответ №1:
То, что вы ищете, это
createNiceMock()
http://www.easymock.org/api/easymock/2.4/org/easymock/EasyMock.html#createNiceMock(java.lang.Класс)
Ответ №2:
Ответ Амира о «хороших макетах» — правильный способ сделать это с помощью EasyMock, но, возможно, вам было бы лучше использовать полностью отключенную версию HttpServletRequest, такую как Spring MockHttpServletRequest
, которая вместо динамического макета просто предоставляет реализацию интерфейса, который обеспечивает прямые реализации всех методов.
Необходимость указывать каждый из методов, которые вы хотите вызвать для запроса / ответа сервлета, звучит так, как будто это было бы утомительно — я думаю, разумно ожидать, что код уровня сервлета довольно тесно связан с этими объектами запроса / ответа.