A production-grade BDD + POM automation framework built with Java, Selenium, Cucumber, TestNG & Maven Developed For Learning Purpose.
Application Under Test: LambdaTest Ecommerce Playground
This is a Hybrid Automation Framework designed for the LambdaTest Ecommerce Playground. It follows Behavior Driven Development (BDD) using Cucumber, Page Object Model (POM) design pattern, and TestNG for execution.
Key Features:
| Technology | Purpose |
|---|---|
| Java 17 / 21 | Programming Language |
| Selenium WebDriver | Browser Automation |
| Cucumber | BDD Framework |
| TestNG | Test Execution & Assertions |
| Maven | Build & Dependency Management |
| Log4j2 | Logging |
| Extent Reports + Allure | Advanced Reporting |
| Jenkins / GitHub Actions | CI/CD |
Thanks to all our contributors who have helped build and improve this project:
| Rank | Contributor | Commits |
|---|---|---|
| 1 | TAMILKUMAR0027 | 190 |
| 2 | 14-Prasanna (Prasanna Venkatesh K) | 140 |
| 3 | Rishwanth-Adhishwar | 102 |
| 4 | samihamuhabathulla | 61 |
| 5 | raviravi31799-crypto | 35 |
Tamilkumar (@TAMILKUMAR0027) — All Pull Requests should be reviewed by Tamilkumar.
Verify installation: ```bash java -version mvn -version
Running Tests Bash# Clean and run all tests mvn clean test
mvn clean test -Dcucumber.filter.tags=”@WishlistE2E”
mvn clean test -Dbrowser=chrome -Dheadless=false
Reports
Extent Reports: target/ExtentReports/ Allure Reports: Run allure serve allure-results Surefire Reports: target/surefire-reports/
How to Contribute We welcome contributions from everyone! Whether you’re fixing a bug, adding new test scenarios, improving documentation, or enhancing the framework — your help is appreciated. Contribution Guidelines
Fork the repository Create a new branch (git checkout -b feature/your-feature-name) Make your changes Test your changes thoroughly (mvn clean test) Commit your changes with clear messages Push to your branch and open a Pull Request
Raising Issues & Pull Requests
Found a bug? → Please raise an Issue Want to add a feature? → Open an Issue first for discussion, then submit a Pull Request Documentation improvement? → Feel free to raise a PR directly
Please follow the issue and PR templates available in .github folder.
CI/CD
GitHub Actions: Automatically runs on every push and PR Jenkins: Configured for scheduled and manual builds
You can use this framework as a dependency in other projects via GitHub Packages.
Add the following in your project’s pom.xml:
```xml
mvn clean test
mvn clean test -Dcucumber.filter.tags=”@WishlistE2E”
mvn clean test -Dbrowser=chrome
Made with ❤️ by Defect Defenders LambdaTesters Team