Одна из проблем автоматического тестирования API состоит в том, что многие инструменты требуют, чтобы сервер API был запущен и работал, прежде чем запускать свой набор тестов. Наличие инфраструктуры модульного тестирования, способной запускать и запрашивать API-интерфейсы в полностью автоматизированной тестовой среде, может стать реальным преимуществом.
Вариант, который подходит для API, реализованных с помощью Node.JS / Express, - это использование мокко для автоматического тестирования. Помимо модульных тестов, легко писать функциональные тесты для API, разделенных на разные наборы тестов. Вы можете автоматически запустить сервер API в локальной тестовой среде и настроить локальную тестовую базу данных. Используя make, npm и сервер сборки, вы можете создать цель «make test» и инкрементную сборку, которая будет запускать весь набор тестов каждый раз, когда фрагмент кода отправляется в ваш репозиторий. Для по-настоящему привередливого разработчика он даже сгенерирует хороший отчет о покрытии кода HTML, показывающий, какие части вашей кодовой базы покрываются тестами, а какие нет. Если это звучит интересно, вот сообщение в блоге, в котором представлены все технические детали.
Если вы не используете узел, то какой бы ни была структура модульного тестирования де-факто для языка (jUnit, cucumber / capybara и т. Д.) - посмотрите на его поддержку для раскрутки серверов в локальной тестовой среде и выполнения HTTP-запросов. Если это большой проект, то усилия по автоматическому тестированию API и постоянной интеграции окупятся довольно быстро.
Надеюсь, это поможет.