Мок-сервер Swagger с динамическим управлением для тестирования

Я ищу проект / инструмент, который может получить файл спецификаций swagger в качестве параметра и создать макет сервера, которым можно управлять программно через интерфейс REST API.

Например, если мой API содержит следующую конечную точку: «POST / v1 / create» и у меня есть чванливые спецификации, описывающие этот API, я бы хотел, чтобы мой макет сервера выполнялся примерно так:

макет-сервер -f swagger.yaml -p 8080

Пока сервер работает, можно будет взаимодействовать с его собственным REST API (на некотором интерфейсе управления через другой порт) и изменять поведение запущенного макетного сервера swagger, то есть: изменить код ответа, установить содержимое ответа и т. д.

Я хотел бы использовать такой макет-сервер как часть своего набора системных тестов, чтобы лучше проверять поведение моего сервиса при взаимодействии с другими сервисами - без необходимости запускать эти «настоящие» сервисы.

Я ищу что-то похожее по духу на ToxiProxy от Shopyify (https://github.com/Shopify/toxiproxy), но с вышеуказанными возможностями.

Спасибо!

Эльдад

Соответствует ли какой-либо из эти фиктивные серверы вашим потребностям?

Helen 22.05.2018 23:07

Нет, SwaggerHub и Prism близки, но похоже, что они позволяют устанавливать только статические ответы, что хорошо, но не подходит для автоматического тестирования, в котором я хотел бы иметь возможность изменять ответ API как часть моих шагов по настройке / демонтажу теста.

Eldad 22.05.2018 23:19

@Eldad: ты нашел решение? Вы принимаете ответ?

Phung D. An 17.02.2019 00:26
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
3
3
1 650
1

Ответы 1

Я знаю, что немного опаздываю на вечеринку по этому вопросу, но для будущих поисковиков MockLab теперь поддерживает автоматическое создание фиктивных API из импортированного определения Swagger и веб-перехватчиков Swaggerhub.

Подробнее здесь: https://www.mocklab.io/blog/mocklab-now-supports-swagger-and-swaggerhub/

Другие вопросы по теме