Skip to content

Instantly share code, notes, and snippets.

@zeburek
Last active December 20, 2024 07:39
Show Gist options
  • Save zeburek/8c165c9e8676945d75d91fe2f2addf8d to your computer and use it in GitHub Desktop.
Save zeburek/8c165c9e8676945d75d91fe2f2addf8d to your computer and use it in GitHub Desktop.
Чек-лист проверок API

Чек-лист API тестов

  • Корректность структуры данных
  • POST запросы
    • Заполнены все поля валидными данными
    • Заполнены только обязательные поля
    • Заполнены не все обязательные поля
    • Не заполнено ни одно поле
    • Валидация данных в полях (корректные и некорректные данные)
    • Пустой JSON
    • Дата создания объекта
  • GET запросы
    • Пустой список (если возможно)
    • Заполненный список
    • Пагинация в списке (limit, offset)
    • Получение списка с ограничением на количество записей
    • Получение списка начиная с указанного номера
    • В случае передачи параметров с некорректным значением возвращается 400 с описанием ошибки в теле ответа
    • При отрицательном offset список пользователей возвращается начиная с первой позиции
    • При несуществующем offset возвращается пустой список пользователей
    • Сортировка списка
    • Запрос данных по валидному ID, проверка возвращения корректных данных
    • Запрос данных по несуществующему ID, но в валидном формате
    • Запрос данных по невалидному ID
  • PUT запросы
    • Обновление с корректными данными
    • Обновление по несуществующему ID
    • Обновление по невалидному ID
    • Валидация полей (корректные и некорректные данные)
    • Частичное обновление (в JSON присутствуют не все поля)
  • DELETE запросы
    • Удаление существующего объекта
    • Удаление уже удаленного объекта
    • Удаление по несуществующему ID
    • Удаление по невалидному ID
    • Удаление и повторное добавление такой же сущности (если есть уникальные поля)
  • Проверка статусов ответов
  • Проверка всех возможных ошибок
  • Остальные специфичные проверки в случае сложной логики
@alvind24ru
Copy link

👍👍👍👍

@Evgeny-Starikov
Copy link

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment