Попалась статья на Хабре - разбор про 20 конкретных проверок для одного эндпоинта заказа.
Решил пройтись честно: что из этого у нас реально в привычке, а что мы молча пропускаем.
С чем согласен полностью:
Статус-код + структура + типы + значения + бизнес-логика это база, но именно расчёт
total независимо от ответа API, а не по формуле из того же ответа, часто упускают. Проверять сумму так, как её вернул сервер, это не всегда тест, иногда тавтология.Отдельная проверка на «нет закрытых полей» в ответе (password_hash, внутренние ID) мало у кого в чек-листе, хотя это прямая рекомендация OWASP. Обычно про это вспоминают уже после security-аудита, а не до 🔓.
Идемпотентность и повторный DELETE казалось бы, база базовая, но многие тестируют happy path один раз и не проверяют, что будет при повторе запроса после обрыва соединения. А в проде именно так и происходит.
С чем не согласен или дополнил бы: то, что автор предлагает проверять BOLA и BFLA (чужие объекты и чужие роли) как отдельные пункты 14-16. Согласен, но я бы вынес это не в общий список из 20, а в обязательный security-чеклист, который прогоняется для каждого нового эндпоинта отдельно. Это слишком критичная зона, чтобы теряться между «граничными значениями» и «идемпотентностью».
Момент про retry/polling для асинхронных операций (202 Accepted) описан хорошо, но не хватает конкретики про таймауты сколько ждать, прежде чем считать тест упавшим. На практике команды либо ждут слишком долго (тест на 30 секунд ради проверки одного заказа), либо слишком коротко и ловят false negative на нормальном async-переходе.
И ещё: список сфокусирован на одном сквозном REST-сценарии. Отдельно жаль, что не затронуты webhooks (хотя в разделе «куда копать дальше» упомянуты), но на практике именно повторная доставка событий и нарушение порядка чаще всего ловится постфактум, а не на этапе тестирования.
Что реально годится взять как чек-лист:
Таблица в конце статьи как удобный формат для ревью тест-кейсов, которую стоит адаптировать под свои нужды. Можно сверяться, особенно с middle-специалистами, которые ещё выстраивают привычку проверять не только happy path.
Сколько из 20 у вас реально в привычке, а не только в теории? Особенно интересно, кто уже гоняет idempotency-тесты на постоянку, а не только «когда вспомнили» 🔁