Как тестировать API

Читать в полной версии →

Тестирование API — интеграционное тестирование для выявления ошибок взаимодействия между модулями системы или между системами. Для его проведения тестировщики часто прибегают к специальным инструментам с функциями отправки входных данных в запросе и проверки точности выходных данных.

Что входит в тестирование API

Для каждого запроса API необходимо проверять следующие пункты:

  1. Правильность кода состояния HTTP через возврат соответствующего ответа на любое действие. Это может быть ответ 201 Created в случае создания ресурса или 403 Forbidden для отправки запрещенных запросов.
  2. Корректность тела JSON, типов, значений и имен полей ответа, включая ответы на ошибочные запросы.
  3. Оценка заголовков ответа HTTP-сервера. Они влияют на безопасность и производительность системы.
  4. Правильность состояния приложения при ручном тестировании и/или самостоятельной проверке пользовательского или иного интерфейса.
  5. Базовую работоспособность и время завершения операции. Если действие занимает слишком много времени, тест считается не пройденным.

Принципы тестирования API

Тестирование API базируется на следующих принципах:

Инструменты тестирования API

Чаще всего тестировщики пользуются этими инструментами:

Как тестировать API

Рассмотрим реальный пример тестирования RESTful API для системы управления постами со следующими методами:

Тестирование API можно провести в несколько этапов.

1. Определение требований

Документация API содержит информацию о структуре поста и его полях, процессе его создания и обновления, кодах состояния и структурой ответов.

2. Разработка тестовых случаев

3. Настройка окружения

Выбор инструмента тестирования API в зависимости от задач проверки и его установка.

4. Отправка запросов

Передача запросов из тестовых случаев к API с помощью выбранного инструмента.

5. Проверка ответов

Сравнение ответов API с ожидаемыми результатами, указанными в тестовых случаях. Тестировщики оценивают корректность возвращаемого кода состояния, соответствие структуры ответа ожидаемой модели и правильность значения полей.

6. Работа над ошибками

Оценка процесса обработки ошибок API при отправке некорректных запросов. Специалистам необходимо убедиться, что API возвращает соответствующие коды и описание ошибок.

7. Генерация отчетов

Отчет о результатах проверки создается после каждого теста. В отчет входит информация об успешных и неудачных тестах, ошибках, кодах состояния, ответах и другие данные.

8. Регулярное проведение повторного тестирования

Проверка необходима после внесения изменений в код API и/или его окружение, при обнаружении ошибок и для подтверждения работоспособности API.

На курсе «Инженер по тестированию» вы научитесь работать с API и проводить его тестирование с использованием соответствующих инструментов.