Обзор Релиза Schemathesis v4.13.0

TL;DR

  • Динамическая аутентификация через конфигурацию для OpenAPI схем, без кода Python.
  • Автоматические повторы запросов с экспоненциальной задержкой при сетевых сбоях.
  • Ключевые исправления для регистрации хуков и точности генерации данных.

Ключевые Изменения

Новые Возможности Schemathesis v4.13.0 представляет новый блок конфигурации [auth.dynamic.openapi.<scheme>], позволяющий динамическую аутентификацию получения токенов непосредственно через конфигурацию, устраняя необходимость в пользовательском коде Python. Эта версия также добавляет --request-retries для автоматического повтора запросов при сетевых сбоях с использованием стратегии экспоненциальной задержки, что значительно повышает стабильность тестирования. Кроме того, захваченные данные ответа теперь могут использоваться на этапе примеров, улучшая генерацию тестовых сценариев.

Улучшения Логика вывода зависимостей была улучшена для удаления префиксов версий API и предотвращения перекрестных ссылок на одноименные ресурсы из разных пространств имен API, что приводит к более точной генерации тестов.

Исправления Ошибок Важные исправления включают решение проблемы, при которой наборы фильтров apply_to / skip_for не обновлялись между регистрациями хуков, что приводило к некорректному применению фильтров. Релиз также исправляет ошибку, при которой сгенерированные строки из регулярных выражений нарушали ограничения minLength/maxLength на этапе покрытия, обеспечивая точность генерации данных. Незначительное исправление UI устраняет усечение базового URL в сводке запуска на узких терминалах.

Влияние на QA-команды

Это обновление упрощает настройку API-аутентификации, делая ее быстрее и менее зависимой от кода. Функция --request-retries повышает надежность тестов при временных сетевых проблемах, уменьшая количество ложных срабатываний. Улучшенная точность генерации данных и исправленное поведение хуков обеспечивают более последовательные и надежные результаты тестирования.

Официальный Источник

Для получения дополнительной информации обратитесь к примечаниям к выпуску Schemathesis v4.13.0.