Модульное тестирование REST API

У меня есть некоторый опыт в модульном тестировании и имитировании. Имея ограниченный опыт, я бы использовал их для тестирования уровня сервиса, например, для имитации (создания заглушек?) Базы данных, чтобы устранить зависимости и сконцентрироваться на модульном тестировании бизнес-логики.

Сейчас я создаю реализацию API-оболочки, которая будет использовать веб-службы RESTful. Отправленная мне структура результата json не находится в моих руках, например: Twitter. Я просто создаю клиента для взаимодействия с их api. Я не уверен, как провести модульное тестирование результата json. Прямо сейчас я просто издеваюсь над результатом http-запроса со статической структурой json. Это гарантирует правильность десериализации json в мои pojos, но меня беспокоят изменения API. Что делать, если структура api изменится? Что, если api в настоящее время возвращает «title» сегодня и «groovy_title» завтра? Мой модульный тест этого не поймёт.

Однако, насколько я понимаю, юнит-тесты должны быть быстрыми. Раньше я издевался над db, а теперь я издеваюсь над http, но должен ли я на самом деле использовать конкретную реализацию http, чтобы сразу же получать уведомление о критическом изменении api? Или есть лучший способ подойти к этой ситуации?

8
задан Mike 25 February 2012 в 02:38
поделиться