Skills gained:
- Test Automation Framework Design
- Behavior-Driven Development (BDD)
- TestNG Configuration and Execution
- Advanced Reporting with ExtentReports
- Selenium WebDriver Automation
- Maven Build and Dependency Management
- Agile Testing Skills
- Modularization and Code Reusability
- API Testing and Configuration
- Debugging and Issue Resolution
-
testng.xml: TestNG configuration file that specifies which test classes or groups to run, along with configurations like listeners or parallel execution. -
pom.xml: Maven's Project Object Model file that manages project dependencies, build plugins, and project information. -
test-output/: Directory automatically generated after test execution, containing:SparkReport/Spark.html: ExtentReports' HTML report for detailed test results.
-
README.md: The README file typically provides project information, setup instructions, and other relevant details.
- README.md: Documentation file typically used to describe the project purpose, setup instructions, and usage guidelines.
LoginPage.java: Likely contains locators and methods for interactions on the Login page.DashboardPage.java: Contains locators and methods for the Dashboard page.- Represents the Page Object Model (POM) design pattern.
DriverManager.java: Handles WebDriver setup, teardown, and browser configuration, ensuring reusability across tests.
extent.properties: Configuration file for ExtentReports, specifying properties like report title and location.spark-config.xml: Defines configurations for SparkReport, such as theme, timestamp settings, or logo inclusion.
RunCuke.java: Entry point for executing Cucumber tests using the Cucumber TestNG runner.
DashboardPageSteps.java: Step definition file containing Cucumber steps for Dashboard-related features.OrangeHRMloginSteps.java: Step definition file for Login-related features.
-
dashboard.feature: Cucumber feature file describing Dashboard page scenarios in Gherkin syntax. -
orangeHRMLogin.feature: Feature file for Login scenarios.
-
Maintainability:
- Clear segregation of page objects, utilities, step definitions, and feature files.
-
Reusability:
- Centralized utilities (e.g.,
DriverManager) and separate page classes ensure reusable components.
- Centralized utilities (e.g.,
-
BDD Best Practices:
- Using Gherkin for feature files and keeping step definitions tied to logical feature areas.
-
Reporting:
- Integration of ExtentReports/SparkReport for comprehensive and visually appealing test reporting.
-
Modularity:
- Adding new features or pages is simple due to this structured approach.


