A comprehensive Selenium WebDriver automation framework built using Java, Maven, and Cucumber BDD.
This project demonstrates how Amazon Q Developer can be used to generate an enterprise-ready test automation framework from scratch using basic, user-friendly prompts, significantly reducing manual development effort.
The framework follows modern test automation best practices, including the Page Object Model (POM) and Behavior-Driven Development (BDD), and supports detailed test execution reporting, while being designed for scalability, maintainability, and seamless CI/CD integration.
- β‘ Complete Framework Structure generated by Amazon Q Developer
- π Manual Code Validation - Reviewed and validated generated code
- π¬ User-Friendly Prompts - Provided clear prompts to generate enterprise framework
- π― 3 Test Scenarios with comprehensive coverage (2 passed, 1 intentionally failed)
- π Multiple Report Formats - Cucumber, TestNG
- π CI/CD Ready with GitHub Actions
- πΈ Visual Evidence with automatic screenshots
- π₯ Complete Demo Recording - End-to-end demonstration available
A complete end-to-end demonstration of this project, including Amazon Q Developerβassisted framework generation, test execution, and reporting, is available at the link below:
π Demo Video (Google Drive): https://drive.google.com/file/d/1jLzyRj0eA2G76cf_fTAeDACaOkITJ09t/view?usp=sharing
- Cucumber Report: View Report
- Cucumber Report Preview:

- TestNG Report: View Report
- TestNG Report Preview:

- Successful login and dashboard access: View Screenshot
- Logout Process: View Screenshot
- Failed Login: View Screenshot
This project was generated using Amazon Q Developer AI assistance with continuous code quality improvements.
- Generated the complete project structure
- Created Page Object Model classes
- Implemented Cucumber step definitions
- Configured Maven dependencies with TestNG
- Set up Allure reporting with TestNG integration
- Created CI/CD-ready execution scripts
- Generated comprehensive documentation
- Provided user-friendly prompts to Amazon Q
- Reviewed and validated generated code
- Minor refinements for project-specific needs
- Executed and demonstrated the framework
This demonstrates how Amazon Q can significantly accelerate enterprise-grade test automation development.
- Java 11 - Programming language
- Maven - Build and dependency management
- Selenium WebDriver 4.15.0 - Web automation
- Cucumber 7.14.0 - BDD framework
- TestNG 7.8.0 - Test runner with parallel execution
- Allure 2.24.0 - Advanced reporting
- WebDriverManager - Browser driver management
src/
βββ main/java/com/acme/
β βββ pages/ # Page Object Model classes
β β βββ BasePage.java
β β βββ LoginPage.java
β β βββ DashboardPage.java
β βββ utils/ # Utility classes
β βββ DriverManager.java
β βββ ScreenshotUtils.java
β βββ ReportOpener.java
β βββ TestNGReportGenerator.java
βββ test/
βββ java/com/acme/
β βββ runners/TestRunner.java
β βββ stepdefinitions/LoginSteps.java
βββ resources/
βββ features/login.feature
βββ allure.properties
βββ cucumber.properties
testng.xml # TestNG suite configuration
- π Cross-browser testing (Chrome, Firefox)
- π± Headless execution for CI/CD
- πΈ Automatic screenshot capture
- β±οΈ Smart wait strategies
- π Sequential execution with fresh browser sessions
- π Gherkin scenarios for business-readable tests
- π Multiple test types (positive, negative, workflow)
- π Data-driven testing ready
- π Step definition reusability
- π Advanced reporting - Custom HTML reports
- π§ Flexible annotations - Better test lifecycle control
- π― Test grouping - Organize tests by categories
- π Suite management - XML-based test configuration
- π Fresh sessions - Clean browser state per scenario
- π Allure reports - Interactive dashboards
- π Cucumber HTML reports - Standard BDD reporting
- π TestNG HTML reports - Detailed execution reports
- π JSON/XML exports - CI/CD integration
- πΈ Visual test evidence - Screenshots in reports
- User Login - Valid credential authentication
- Dashboard Access - Post-login navigation verification
- User Logout - Complete session termination
- Negative Testing - Invalid credential handling
- ACME Test Application: https://acme-test.uipath.com/
- Test Credentials: test-demo@acme.com / Test@1234
- Java 11 or higher
- Maven 3.6+
- Chrome/Firefox browser
git clone https://github.com/Naveen-Ravichandran003/Naveen_DemoProject1.git
cd Naveen_DemoProject1
mvn clean install# Run all tests using TestNG suite
mvn clean test
# Headless mode (CI/CD)
mvn test -Dheadless=true# Generate Allure report
mvn allure:report
# Start Allure live server
mvn allure:serveAfter execution, reports are available at:
- Cucumber HTML:
target/cucumber-html-reports/report.html - TestNG HTML:
target/testng-html-report.html - Allure Report:
target/site/allure-maven-plugin/index.html - Screenshots:
test-screenshots/
- Automatic testing on every code change
- Catch bugs early before they reach production
- Prevent broken code from being merged
- Industry standard - Expected in enterprise environments
- Team collaboration - Multiple developers can work safely
- Code confidence - Know immediately if changes break tests
- Test results available instantly after each run
- Historical tracking - See test trends over time
- Visual evidence - Screenshots and reports stored automatically
- Compliance - Many organizations require automated testing
- Deployment gates - Tests must pass before releases
- Documentation - Audit trail of all test executions
- β Automated Testing - Runs on every push and pull request
- β Cross-Platform - Ubuntu environment with headless Chrome
- β Report Generation - Automatic Allure, Cucumber, and TestNG reports
- β Artifact Storage - Test results and screenshots saved for 90 days
- β Status Badges - Real-time build status visibility
- Push to
mainorNaveen_Demobranches - Pull requests to these branches
- Manual workflow dispatch
- Environment Setup - Java 11, Maven, Chrome
- Dependency Caching - Faster builds with Maven cache
- Test Execution - Headless Selenium tests
- Report Generation - Allure and Cucumber reports
- Artifact Upload - Reports and screenshots storage
- GitHub Actions: View Workflows
- Build Status:
# Example GitHub Actions
- name: Run Tests
run: mvn clean test -Dheadless=true
- name: Generate Reports
run: mvn allure:report- Default: Chrome (headed mode)
- Headless: Set
headless=truesystem property - Firefox: Modify
DriverManager.java
- Feature Files:
src/test/resources/features/ - Test Properties:
src/test/resources/cucumber.properties - Allure Config:
src/test/resources/allure.properties
- Total Files: 15+ automation files
- Code Coverage: Page Object Model implementation
- Test Scenarios: 3 comprehensive test cases (positive, negative, workflow)
- Reporting Formats: 3 different report types
- Execution Mode: Sequential with fresh browser sessions
- β Page Object Model - Maintainable code structure
- β BDD Implementation - Business-readable scenarios
- β Error Handling - Robust exception management
- β Screenshot Evidence - Visual test validation
- β Wait Strategies - Reliable element synchronization
- β TestNG Integration - Custom HTML report generation
- β Thread Safety - ThreadLocal WebDriver management
- β Fresh Sessions - Clean browser state per test
- Fork the repository
- Create feature branch (
git checkout -b feature/new-test) - Commit changes (
git commit -am 'Add new test scenario') - Push to branch (
git push origin feature/new-test) - Create Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Amazon Q Developer AI assistance
- Implements industry best practices for test automation
- Designed for enterprise-scale testing requirements
- Optimized for both local development and CI/CD pipelines
Repository: https://github.com/Naveen-Ravichandran003/Naveen_DemoProject1
Branch: Naveen_Demo