https://github.com/brbhavesh63/automationexceriseapp
AutomationExercise is a web-based e-commerce platform designed for QA engineers to practice automation testing. This project implements an advanced Selenium-based test automation framework in Python using Pytest. The framework is structured for modularity, reusability, and scalability, enabling efficient end-to-end testing.
https://github.com/brbhavesh63/automationexceriseapp
automation datadriventesting ecommerce-website pytest python selenium test-automation webdriver
Last synced: about 2 months ago
JSON representation
AutomationExercise is a web-based e-commerce platform designed for QA engineers to practice automation testing. This project implements an advanced Selenium-based test automation framework in Python using Pytest. The framework is structured for modularity, reusability, and scalability, enabling efficient end-to-end testing.
- Host: GitHub
- URL: https://github.com/brbhavesh63/automationexceriseapp
- Owner: brbhavesh63
- Created: 2025-02-05T16:45:15.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2025-02-15T12:37:29.000Z (4 months ago)
- Last Synced: 2025-02-15T13:32:40.833Z (4 months ago)
- Topics: automation, datadriventesting, ecommerce-website, pytest, python, selenium, test-automation, webdriver
- Language: Python
- Homepage: https://automationexercise.com/
- Size: 3.7 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π AutomationExercise - Selenium Test Automation
## π Overview
AutomationExercise is a web-based e-commerce platform designed for QA engineers to practice automation testing. This project implements an advanced **Selenium-based test automation framework** in **Python** using **Pytest**. The framework is structured for **modularity, reusability, and scalability**, enabling efficient end-to-end testing.
---
## π― Objective
- Automate **key e-commerce functionalities** to ensure reliability and efficiency.
- Enhance **test coverage** and reduce **manual efforts**.
- Validate the **User Interface (UI)** across devices.
- Ensure **cross-browser compatibility**.
- Generate **detailed reports** with logs and screenshots.---
## π Technology Stack
- **Programming Language:** Python
- **Automation Tool:** Selenium WebDriver
- **Testing Framework:** Pytest
- **Design Pattern:** Page Object Model (POM)
- **Configuration Management:** `config.ini`
- **Reporting:** `pytest-html`, Allure Reports
- **Logging & Debugging:** Custom logging, Screenshots on failure---
## π Project Structure
```
AutomationExercise/
β-- TestCases/ # Contains all test scripts
β-- Locators/ # Stores page locators used in POM
β-- Utilities/ # Includes helper functions (readproperties.py)
β-- Configurations/ # Contains config.ini for environment settings
β-- Reports/ # Stores Allure and HTML reports
```---
## π§ Features
- β **End-to-End Test Automation**
- π **Reusable & Maintainable POM-based Design**
- π **Cross-Browser & Mobile-Friendly Testing**
- π **Data-Driven Testing with Configurable Inputs**
- β‘ **Parallel Test Execution for Efficiency**---
## π Automated Test Scenarios
### π€ User Management
- Registration (Valid & Invalid Scenarios)
- Login & Logout
- Account Deletion### π Product Management
- Searching & Filtering Products
- Adding/Removing Items from the Cart### π Shopping & Checkout
- Cart Operations
- Price Validation
- Order Confirmation### π Profile & Address Management
- Editing User Profile
- Adding/Updating Addresses### π§ Contact Forms & Error Handling
- Testing Contact Us form
- Validating error messages### π UI & Cross-Browser Testing
- Checking responsive design
- Testing on Chrome, Firefox, Edge, Safari---
## π Allure Report Integration
To ensure transparency and detailed insights into test executions, **Allure Reports** has been integrated into this framework. It provides:
### πΈ Allure Report Screenshots
#### **Overview Page**
- Displays total test cases executed.
- Shows a **33.33% pass rate**, indicating failed and passed tests.
- Highlights defects and test trends.#### **Graphs & Status Analysis**
- Displays the breakdown of **Failed, Broken, Passed, and Skipped** test cases.
- Provides insights into test **severity levels**.
- Shows test **duration trends**.---
## β οΈ Challenges & Solutions
| Challenge | Solution |
| ------------------------- | ---------------------------------- |
| Handling dynamic elements | Implemented **explicit waits** |
| Managing popups & alerts | Used **Seleniumβs alert handling** |
| Synchronization issues | Applied **WebDriverWait** |---
## π Future Enhancements
- π **API Testing** using Postman or REST Assured
- βοΈ **Cloud Testing** with BrowserStack/Selenium Grid
- β³ **Performance Testing** for website speed optimization
- π **Custom Logging & HTML Reporting** for logging and debugging
- π· **Screenshot Capture on Test Failure** for test failure and pass references---
## π Conclusion
This automation framework ensures **high-quality software testing** with maximum efficiency. By leveraging **Selenium, Pytest, and POM**, it improves reliability, reduces manual efforts, and provides **comprehensive test coverage**. This project is a stepping stone for creating robust **CI/CD-ready test automation suites**.
π₯ **Automate Smart, Test Faster!** π₯