This project is a certification framework, developed for the LambdaTest Advanced Certification.
It automates a complex workflow on the LambdaTest Integrations page, implementing advanced Selenium techniques, framework design patterns, reporting, and execution on cloud browsers.
π Advanced Workflow Automated
The following critical user interactions were automated as part of the certification:
- Complex navigation clicks across multiple sections
- Handling multiple windows/tabs efficiently
- Applying Explicit Waits for reliable synchronization
- Using JavaScript Executor for dynamic element interactions
- Leveraging Actions Class for hover, drag-and-drop, and advanced interactions
- Verifying outcomes and successful navigation
π οΈ Tech Stack & Tools
- Programming Language: Java
- Test Framework: TestNG
- Automation Tool: Selenium WebDriver
- Design Pattern: Page Object Model (POM) with PageFactory
- Build Tool: Maven
- Cloud Execution: LambdaTest (cross-browser testing on Chrome, Firefox, and Edge)
- Reports: ExtentReports (with screenshots on failure)
- Listeners: TestNG custom listeners for logging and reporting
- Additional Features: Email reports, OOPS principles applied
π Framework Highlights
- β Page Object Model (POM): Clean separation of test logic and page locators.
- β PageFactory: Efficient initialization of web elements.
- β Wait & Synchronization: Explicit Waits and smart polling.
- β Multiple Window Handling: Seamless switch between windows/tabs.
- β JavaScript Executor: For handling tricky/dynamic web elements.
- β Actions Class: Advanced interactions like hover, drag-and-drop, etc.
- β Listeners: Captures logs, screenshots, and custom reporting.
- β ExtentReports: Interactive HTML reports with detailed logs & screenshots.
- β Screenshots on Failures: Auto-captured & embedded in reports.
- β Email Notifications: Test summary sent after execution.
- β Cloud Execution (LambdaTest): Same test suite executed across multiple browsers (Chrome, Firefox, Edge).
All test cases were executed on LambdaTest Selenium Grid, ensuring scalability and cross-browser compatibility. Each execution generated a unique session ID on LambdaTest. Session IDs were shared with the LambdaTest team as certification proof.
π Executed Test IDs (LambdaTest Cloud)
Primary Account Test IDs:
- WISTT-CMZT7-67EAG-U8ILE
- OSAXB-MSFRT-B4NXK-VYYM7
- YO13H-ZV80U-1POKL-KDQCL
Secondary Account Test IDs (as my previous account expired):
π Change username & access key in:
src/main/java/base/BaseMainTest.java
username="bloggerdelhi123";
accesskey="J6tY97lVtE0F5Ane1YEg0gqOwpFJPlYv2e6GIkBNdgz5P0IAX2";
After changing, just execute the testng.xml file at the root project directory.
My Test Execution IDs (secondary account):
- H9RX4-FYFQ8-B6ISB-C8X7U
- HGDST-18YX9-WK7DO-7ARDW
- N4VAB-O7OAE-AOQSF-NE2NQ
#π₯οΈ How to Run the Tests Locally
Clone the repository:
- git clone https://github.com/pramesh01/Selenium_LambdaTest_Advanced-Certification.git
- cd Selenium_LambdaTest_Advanced-Certification
Install dependencies via Maven:
mvn clean install
Run tests locally:
- mvn clean test
Alternative command to execute tests:
- mvn clean test -DskipTests=false
For LambdaTest cloud execution, update your LambdaTest credentials in config.properties and run:
- mvn test -Pcloud
- ExtentReports are generated in the Reports/ directory.
- Failed test screenshots are auto-attached in the extent report.
- This framework was submitted to LambdaTest as part of the Advanced Level Certification.
- β Successfully completed and certified by LambdaTest.
Pramesh Kumar
- QA Automation | Selenium | Java | Docker | CI/CD | Cloud Testing