About This Project
This automated testing framework was developed as a learning project to explore Selenium WebDriver with Python and Firefox, focusing on creating robust, maintainable test automation code. The project showcases industry-standard practices for test automation, including proper error handling, logging, screenshot capture, and structured test organization. While fully functional for testing login scenarios, this project represents a journey in mastering test automation principles and Python development.
Features
- Comprehensive Test Coverage: Tests valid login, invalid username, invalid password, and empty field scenarios
- Detailed Logging: Complete action logging with timestamps and structured output to file
- Screenshot Capture: Automatic screenshots for both successful and failed test cases with descriptive naming
- Structured Architecture: Object-oriented design with separate classes for test data and test execution
- Multiple Test Execution: Runs all test scenarios in sequence with summary reporting
- Error Handling: Robust exception handling with detailed error logging
- Firefox Integration: Optimized for Mozilla Firefox with GeckoDriver
Project Structure
selenium-login-tests/
├── login_test.py # Main test automation script
├── selenium_test.log # Generated log file (created on run)
├── screenshots/ # Generated screenshots directory
│ ├── login-success-*.png # Successful login screenshots
│ ├── login-failed-*.png # Failed login screenshots
│ └── login-error-*.png # Error case screenshots
└── README.md # Project documentation