Echidna — фаззер на Haskell для тестирования смарт-контрактов Ethereum: он подбирает последовательности вызовов, чтобы нарушить пользовательские инварианты или Solidity-утверждения.
HypothesisWorks/hypothesis
Библиотека property-based тестирования для Python, которая автоматически генерирует тестовые данные и сводит ошибки к минимальным примерам.
- Звёзды
- 9,138
- Форки
- 698
- Открытые issues
- 53
- Последний коммит
- позавчера
Что это?
Hypothesis позволяет писать тесты, которые должны проходить для любых входных данных из заданного вами диапазона. Вместо того чтобы вручную подбирать примеры, вы описываете стратегии генерации данных, а Hypothesis случайным образом выбирает входные значения, в том числе граничные случаи, о которых разработчик может не подумать.
Если тест завершается с ошибкой, Hypothesis упрощает входные данные до самого простого примера, который всё ещё воспроизводит баг, — так отчёт проще отлаживать. Библиотека устанавливается через pip и поддерживает дополнительные опциональные пакеты.
Ключевые возможности
- 01Генерирует тестовые данные по декларативно заданным стратегиям, например для списков и целых чисел.
- 02Упрощает входные данные, вызвавшие ошибку, до самого простого случая, который всё ещё воспроизводит баг.
- 03Устанавливается через pip и предлагает опциональные дополнительные пакеты.
Сценарии использования
- Проверка того, что пользовательская сортировка или парсер корректно работают с множеством сгенерированных входных данных.
- Поиск граничных случаев, которые часто пропускают написанные вручную модульные тесты.
- Отладка ошибок путём сведения их к минимальным воспроизводимым примерам.
Быстрый старт
- 1
Установите Hypothesis с помощью pip
pip install hypothesis
В подборках
Темы
Частые вопросы
- Что такое hypothesis?
- Библиотека property-based тестирования для Python, которая автоматически генерирует тестовые данные и сводит ошибки к минимальным примерам. Hypothesis позволяет писать тесты, которые должны проходить для любых входных данных из заданного вами диапазона. Вместо того чтобы вручную подбирать примеры, вы описываете стратегии генерации данных, а Hypothesis случайным образом выбирает входные значения, в том числе граничные случаи, о которых разработчик может не подумать.
- hypothesis можно использовать бесплатно? Какая у него лицензия?
- hypothesis распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- hypothesis всё ещё поддерживается?
- Активно поддерживается. Последний коммит в hypothesis — 3 нояб. 2026 г..
- Для чего можно использовать hypothesis?
- Проверка того, что пользовательская сортировка или парсер корректно работают с множеством сгенерированных входных данных. Поиск граничных случаев, которые часто пропускают написанные вручную модульные тесты. Отладка ошибок путём сведения их к минимальным воспроизводимым примерам.
- Как установить hypothesis?
- Установите Hypothesis с помощью pip: pip install hypothesis
- Где скачать hypothesis?
- Исходный код и инструкции по установке — на GitHub: https://github.com/HypothesisWorks/hypothesis
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Навык для coding agent, который заставляет ИИ-агентов подтверждать корректность кода: сначала составить план тестирования, пройти серию проверок и подготовить отчёт с доказательствами.
Сервис Google для непрерывного фаззинг-тестирования open source-проектов с помощью libFuzzer, AFL++ и Honggfuzz с санитайзерами для поиска уязвимостей.
Маркетплейс навыков и плагинов Trail of Bits для ИИ-аудита безопасности, тестирования и безопасной разработки в Claude Code и Codex.
Эталонная реализация автономного конвейера поиска уязвимостей и подготовки исправлений для Claude с интерактивными security skills для моделирования угроз, сканирования, триажа и внесения исправлений.
Selenium — набор инструментов и библиотек для автоматизации браузеров на основе стандарта W3C WebDriver.