2016-11-24 4 views
0

Скажем, у меня есть функция в моем приложении, которая опирается на внешний API - я предоставляю интерфейс, который вызывает вызовы на моем сервере, а сервер, опираясь на это, вызывает некоторые вызовы на некоторые внешние API и что-то отвечает клиенту. Если я хочу написать приемочный тест с огурцом для этого, как я могу заглушить вызовы для этого внешнего API, так, например, любой вызов GET в https://www.cool-api.io/foo сразу сразу вернет некоторый предопределенный ответ JSON с некоторыми предопределенными заголовками, любой запрос POST к этому URL-адресу вернет ответ с некоторым предопределенным статусом и заголовками и т. д. Как вы это сделаете для приемочных тестов, если вы используя огурец?Поддельные ответы http с огурцом

+0

Как насчет использования насмешливой структуры, такой как mockito – Grasshopper

ответ

0

Я бы, вероятно, написал свой собственный заглушка, который смог подделать реализацию ответа с ожидаемым контентом и набором заголовков. Если объект ответа определен с помощью интерфейса, тогда у вас будет рулонный рулон, чтобы реализовать этот интерфейс.

Использование Mockito для этого, вероятно, будет громоздким, на мой взгляд. Mockito отлично, но создание сложного возвращаемого значения, как это, может быть грязным. Жесткое кодирование ответов в реализации интерфейса ответа может быть проще.

Я бы проверил фактическую интеграцию по отношению к внешней службе с помощью других инструментов, кроме огурца.

Смежные вопросы