Автоматизированный фреймворк для API и UI тестирования, разработанный на Python с использованием pytest, requests, playwright и Allure.
Поддерживает параллельные прогоны, генерацию отчётов, вложение артефактов и единую структуру для API и UI тестов.
| Категория | Возможности |
|---|---|
| Язык и инфраструктура | Python 3.12+, виртуальное окружение venv |
| Фреймворк тестов | Pytest с плагинами (pytest-xdist, pytest-allure-adaptor) |
| Отчётность | Allure Reports с прикреплением логов, скриншотов и JSON |
| API тесты | Работа через requests и универсальный ApiClient |
| UI тесты | Поддержка браузерных тестов через Playwright |
| UI тесты | Проверка верстки страниц |
| Ассерты | Читаемые и расширяемые assert_status_code, assert_json_field |
| Параллельность | Поддержка -n auto для многопроцессного запуска |
| CI/CD интеграция | Поддержка Allure-отчётов в TeamCity / Jenkins |
| Артефакты в Allure | Скриншоты, JSON-ответы, HAR-трейсы, шаги с описаниями |
- Python 3.14 доступный как `python3.14` (или исправьте переменную PYTHON в setup script)
- bash shell (Linux / macOS). Для Windows используйте WSL или вручную адаптируйте команды.
- Рекомендуется установить Allure CLI для генерации HTML-отчёта:
- macOS:
brew install allure(илиbrew install allure2) - Windows:
choco install allureили скачайте из релизов
- macOS:
chmod +x setup_python_framework.sh
./setup_python_framework.sh
1️⃣ удаляет старый отчёт,
2️⃣ запускает все автотесты с Allure,
3️⃣ и открывает отчёт в браузере автоматически:
pytest -v --alluredir=build/allure-results
allure serve build/allure-results
или
rm -rf reports/allure-results reports/allure-report && pytest || true && allure serve reports/allure-results