This project serves as a learning exercise for test automation using pytest and Selenium. Although originally part of a course, I ended up improving it further to follow the best practices.
- Pytest Framework: Utilizes the pytest testing framework for writing concise and readable test cases.
- Selenium WebDriver: Integrates Selenium WebDriver for interacting with web elements and automating user interactions.
- Page Object Model: Adopts the Page Object Model design pattern for organizing test code and enhancing maintainability.
- Parameterized Tests: Demonstrates the use of parameterized tests for testing different scenarios with minimal code duplication.
- tests/: Contains the test scripts written in pytest format.
- pages/: Includes page object classes representing different pages of the web application.
- conftest.py: Defines fixtures and common setup/teardown logic for the test suite.
- pytest.ini: Configuration file for pytest, defining markers and additional options for running the tests.
- requirements.txt: Lists all Python dependencies required for the project.