Skip to content

mamedras/OrangeHRM_TestNG_Cucumber_Selenium_Automation

Repository files navigation

OrangeHRM Automation QA Framework

The OrangeHRM Automation QA Project focuses on automating acceptance and integration testing for the OrangeHRM web application. By leveraging Behavior-Driven Development (BDD) with Cucumber and Test-Driven Development (TDD) with TestNG, the project ensures the reliability, scalability, and seamless functionality of the platform. The automation tests streamline key workflows such as user authentication, employee management, and administrative operations, reducing manual effort and delivering high-quality outcomes.

Key Features

  • Functional Testing with Selenium WebDriver: Automates critical workflows, including user interactions and system validations, to ensure application reliability.

  • Behavior-Driven Development (BDD): Implements Cucumber and Gherkin syntax to create human-readable test scenarios, fostering collaboration among stakeholders.

  • Test-Driven Development (TDD): Adopts TDD practices with TestNG for robust unit and integration testing, ensuring a high-quality codebase.

  • Comprehensive Reporting and Logging: Generates detailed test reports with Extent Reports and leverages Log4j for effective debugging and monitoring.

Technologies Used

We utilize the following technologies in our project:

  • Java: Core programming language utilizing OOP principles.
  • POM (Page Object Model Pattern): Organizes web elements and actions for efficient test maintenance.
  • TestNG: Supports Test-Driven Development (TDD) by structuring test suites and executing tests.
  • Cucumber BDD with Gherkin Syntax: Implements Behavior-Driven Development (BDD) for clear, human-readable tests.
  • Selenium Webdriver: Automates web browsers for end-to-end testing.
  • Extent Report: Generates detailed test reports for easy analysis.
  • Log4j: Creates trace log files for debugging and monitoring.
  • Apache POI: Handles CSV file operations for data storage and manipulation.
  • Maven: Manages project dependencies and builds.

Automation QA Steps

Follow these steps to perform automated QA testing on the OrangeHRM application:

  1. Visit the website: https://opensource-demo.orangehrmlive.com/
  2. Attempt to log in as admin with incorrect credentials.
  3. Log in successfully as Admin with the correct credentials.
  4. Log out successfully as admin.
  5. Log in again as admin.
  6. Navigate to the admin info page modify personal and contact information, and then save changes.
  7. Upload a file update the profile picture, and then save modifications.
  8. Access the PIM page (available only to admins).
  9. Add a new employee with a user account, add their information and contact details, and then save the changes.
  10. Go to the employee list, type the new employee's ID, and press Enter.
  11. After locating the record, log out as admin.

Project Setup

  1. Ensure Java is installed on your machine.
  2. Clone this repository.
  3. Install Maven and use it to download the project dependencies: mvn install.
  4. Update configuration files with required data (e.g., credentials, environment)

Failed Test Cases Screenshot

  1. Add new user:adduser

  2. Modify the employee`s info:info

  3. Login screenshot 1:login

  4. Login screenshot 2:screenshotlogin

manual test case

[ORANGEHRM_TESTCASE_AUTOMATION.xlsx] https://docs.google.com/spreadsheets/d/1w15Q6GqJDq8cq4sfOElV3Hoyeg-l-pDbHlytAd862z8/edit#gid=0

Conclusion

This project automates testing for key OrangeHRM workflows, ensuring high reliability and a reduced manual testing effort. It demonstrates effective use of BDD and TDD methodologies, combined with detailed reporting and robust test automation.