Обложка канала

Протестировал

Фильтрованный контент о тестировании и качестве ПО.

Протестировал

6 лет назад
Открыть в
Микросервисная архитектура получила широкое распространение и с ростом количества этих самых сервисов усложняются коммуникации между ними, увеличивается объем разработки серверной и клиентской частей, тестирования этого кода. Для сокращения издержек на написание кода общепринятым подходом считается использование так называемых схем, из которых код клиента и сервера генерируется автоматически. Стандартом схем де-факто является Open API 3.0, инструменты для которой также позволяют генерировать интерактивную документацию.

А вот с тестированием API не все так однозначно. Я думаю не надо объяснять, что при несоответствии реализации схеме возможны неблагоприятные последствия: от необработанной ошибки, которая ломает приложение, до проблем с безопасностью, которые могут повлечь серьезные финансовые потери. Классический подход с example-based тестами не является дешёвым ни в разработке, ни в поддержке. Подход с тестированием с помощью свойств может сократить стоимость тестирования. schemathesis позволяет рутинные проверки с простыми запросами генерировать автоматически из схемы.

Для демонстрации возможностей можно попробовать запустить пример, где создается простой веб-сервис с множеством ошибок и генерируются тесты с помощью schemathesis.

#непишитетесты, генерируйте их