A Python test automation project built with Playwright for learning web testing fundamentals.
- Python 3.9+ - Programming language
- Playwright - Web automation framework
- Pytest - Testing framework
- Poetry - Dependency management
- Allure - Test reporting
-
Clone the project:
git clone https://github.com/vitaliiyz/aqa_python.git cd aqa_python
-
Install Poetry and dependencies:
# Install Poetry if needed pip install poetry # Install project dependencies poetry install # Install browsers poetry run playwright install
Basic test execution:
# Run all tests
poetry run pytest
# Run specific test file
poetry run pytest tests/main_page_test.py
# Run with browser UI visible
poetry run pytest --headed
# Generate test report
poetry run pytest --alluredir=allure-results
poetry run allure serve allure-results
├── pages/ # Page Object Model classes
│ ├── base_page.py # Common page functionality
│ ├── main_page.py # Main page elements and actions
│ └── ...
├── tests/ # Test cases
│ ├── conftest.py # Test fixtures
│ └── *_test.py # Individual test files
├── utils/ # Helper functions
├── config.py # Configuration settings
└── pyproject.toml # Dependencies and settings
This project demonstrates:
- Page Object Model pattern
- Pytest fixtures and parameterization
- Web element interaction with Playwright
- Test reporting with Allure
- Basic CI/CD concepts
This is a learning project for educational purposes.