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.
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.
- Admin Page
- PIM (Personal Information Management) Page
- Recruitment Page
- Vacancies Page
- 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
.
├── 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
- 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
- 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
- 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
- Add a New Vacancy
- Search for a Vacancy
- Mark Vacancy as Closed
- Delete a Closed Vacancy
-
Clone the Repository:
git clone https://github.com/Osama2262/OrangeHRM.git
-
Navigate to the Project Directory:
cd OrangeHRM
-
Install Maven Dependencies:
mvn clean install
-
Run the Tests:
mvn test
-
Generate Allure Reports (optional):
If you have Allure installed, you can generate detailed test reports by running:
mvn allure:serve
- 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.
Feel free to fork this repository, contribute with issues or pull requests. Any suggestions or improvements are welcome!
If you have any questions or would like to discuss this project further, feel free to reach out:
- GitHub: @Osama2262
- Email: [email protected]
Happy testing! 🚀