Как автоматически проверить бек-сервер по спеке OpenAPI на предмет 500-х ошибок?

Есть OpenAPI схема веб-сервиса, например возьмем официальную Swagger Petstore.

В нем есть роут создания пользователя через POST /user:

{
  "id": 10,
  "username": "theUser",
  "firstName": "John",
  "lastName": "James",
  "email": "[email protected]",
  "password": "12345",
  "phone": "12345",
  "userStatus": 1
}

Меня интересует, как можно проверить веб-сервис на предмет 500-x ошибок в автоматическом режиме?

Что-то вроде запуска команды openapi openapi.yaml, которая из схемы узнает какие есть роуты (POST /user), и будет пытаться сломать сервис. Например, в phone будет отправлять такие кейсы:

  • пустое значение
  • null
  • длинный текст (16 кб)
  • отрицательные и дробные значения

Мне это нужно для поиска ошибок. Например, если в БД под email отведено 255 символов, а в коде отсутствует проверка длины, вставка строки приведет к фатальной ошибке, а этот инструмент это найдет по 500-му коду ответа:

POST /user
  HTTP: 500
  field: email
  value: (long text)

Варианты "пишите больше тестов" и "смотрите по логам" не предлагать, нужен активный инструмент.


Ответы (0 шт):