All test execution and reporting is managed automatically using:
- pytest
- allure-pytest
- uv — fast dependency and virtual environment manager
🕛 A nightly test run is executed from the master branch, and the latest Allure Reportis published automatically.
The link to the most recent test results is available at the top of this page.
git clone git@github.com:neuro-inc/apolo_test_automation.git
cd apolocurl -LsSf https://astral.sh/uv/install.sh | shuv syncuv run python -m playwright install --with-depsWith brew:
brew install allureWithout brew:
mkdir -p allure-bin
curl -sSL -o allure.zip https://github.com/allure-framework/allure2/releases/download/2.27.0/allure-2.27.0.zip
unzip -q allure.zip -d allure-bin
export PATH="$PWD/allure-bin/allure-2.27.0/bin:$PATH"Check with:
allure --versionuv run pytest tests/Tests will automatically generate Allure results and produce a report at:
reports/allure-report/index.html
And log file at:
reports/logs/test_run.log
After test execution, open the report in a browser:
open reports/allure-report/index.htmlxdg-open reports/allure-report/index.htmlThis project uses uv with pyproject.toml and uv.lock.
uv sync # Install all project dependencies
uv add pytest # Add a new dependency
uv remove <package> # Remove a dependency
uv pip list # Show installed packagesDo not use
pip installorrequirements.txt.
All generated log and report files are deleted automatically before each test run.
To fully clean your local environment:
rm -rf .venv reports/.
├── .venv/ # Virtual environment (created automatically)
├── tests/ # Test cases and steps
├── reports/ # Allure results and logs
│ ├── allure-report/
│ ├── allure-results/
│ └── logs/
├── pyproject.toml # Dependency + project config
├── uv.lock # Locked dependency versions
└── README.md