Skip to content

πŽπ«πšπ§π πžπ‡π‘πŒ Automation Testing This project automates the testing of key features in the OrangeHRM (Human Resource Management System) platform, including Admin, PIM, Recruitment, and Vacancies pages. Using Selenium with Java, TestNG, and CI/CD integration via GitHub Actions, the tests cover user management, employee handling

Notifications You must be signed in to change notification settings

Osama2262/OrangeHRM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OrangeHRM Automation Testing

This project is a complete Automation Testing implementation for the OrangeHRM (Human Resource Management System) platform. The automation framework has been built using Selenium, Java, and TestNG with the Page Object Model (POM) design pattern, making the testing process efficient and scalable.


πŸš€ Project Overview

The goal of this project is to automate various functional tests for different pages of the OrangeHRM platform, including the Admin, PIM, Recruitment, and Vacancies pages.

Pages Tested:

  • Admin Page
  • PIM (Personal Information Management) Page
  • Recruitment Page
  • Vacancies Page

πŸ›  Tools and Technologies Used

  • Selenium with Java (OOP)
  • TestNG for testing framework
  • Page Object Model (POM) and Builder Pattern for test organization
  • JavaFaker for test data generation
  • Allure Report for generating detailed test reports
  • Screenshots for debugging and error identification
  • Maven for build and dependency management

πŸ“‚ Project Structure

.  
β”œβ”€β”€ src
β”‚   β”œβ”€β”€ main
β”‚   β”‚   └── java
β”‚   β”‚       β”œβ”€β”€ Pages              # Page Object Model Classes
β”‚   β”‚       β”œβ”€β”€ Base               # Base classes for initialization
β”‚   β”‚       β”œβ”€β”€ Utils              # Utilities like data generation
β”‚   └── test
β”‚       └── java
β”‚           β”œβ”€β”€ TestCases           # Test cases for each feature
β”‚           β”œβ”€β”€ TestNGConfig        # TestNG configuration files
β”‚           └── Resources           # Test data files (e.g., CSV, Excel)
β”œβ”€β”€ .gitignore
β”œβ”€β”€ pom.xml                        # Maven dependencies and configurations
└── README.md                      # Project documentation

πŸ”Ή Test Case Details

Admin Page:

  • Add a New User
  • Search for a User
  • Edit a User
  • Delete a User
  • Add a New Job
  • Edit an Existing Job
  • Add a New Organization Location

PIM Page:

  • Add a New Employee
  • Search for an Employee
  • Verify Employee in the Employee List
  • Assign Employee to a Job
  • Assign Employee to a New Location
  • Verify Employee Counter in Location
  • Delete an Employee

Recruitment Page:

  • Add a New Candidate
  • Search for a Candidate
  • Shortlist a Candidate
  • Schedule an Interview
  • Mark Interview as Passed
  • Make a Job Offer
  • Hire a Candidate
  • Confirm Deleting a Candidate
  • Reject a Candidate
  • Mark the Interview as Failed
  • Cancel Job Offer

Vacancies Page:

  • Add a New Vacancy
  • Search for a Vacancy
  • Mark Vacancy as Closed
  • Delete a Closed Vacancy

πŸš€ How to Run the Project

  1. Clone the Repository:

    git clone https://github.com/Osama2262/OrangeHRM.git
  2. Navigate to the Project Directory:

    cd OrangeHRM
  3. Install Maven Dependencies:

    mvn clean install
  4. Run the Tests:

    mvn test
  5. Generate Allure Reports (optional):

    If you have Allure installed, you can generate detailed test reports by running:

    mvn allure:serve

πŸ“ˆ Test Reporting

  • Allure Reports are used to generate detailed reports of the test execution with graphical views and detailed logs.
  • Screenshots are captured on test failure for easier debugging.

πŸ“‘ Contributing

Feel free to fork this repository, contribute with issues or pull requests. Any suggestions or improvements are welcome!


πŸ“§ Contact

If you have any questions or would like to discuss this project further, feel free to reach out:


Happy testing! πŸš€

About

πŽπ«πšπ§π πžπ‡π‘πŒ Automation Testing This project automates the testing of key features in the OrangeHRM (Human Resource Management System) platform, including Admin, PIM, Recruitment, and Vacancies pages. Using Selenium with Java, TestNG, and CI/CD integration via GitHub Actions, the tests cover user management, employee handling

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages