This project is an automated testing suite for HRMS-Solution-Automation web application using Selenium WebDriver with TestNG. It includes test cases for login, employee-based events, leave management, payroll, attendance, report creation etc.
├── src/
│ ├── main/
│ │ ├── java/
│ ├── test/ # All tests are in this folder
│ │ ├── java/
│ │ │ ├── pages/ # Page Object Model (POM) Classes
│ │ │ ├── setup/ # WebDriver Setup
│ │ │ ├── testrunner/ # TestNG Test Runner Classes
│ │ │ ├── stepdefs/ # all kinds of step definitions files should be here
│ │ ├── resources/
│ │ │ ├── Features/ # Keeps generated screenshots for faild tests (Ignored in git)
│ │ │ ├── suites/ # Test suites
│ │ │ ├── config.properties # Keeps config items like base URL
│ │ │ ├── Users.json # User credentials file
├── .gitignore # GitIgnore file
├── pom.xml # Gradle build file
├── README.md # Project Documentation
Before running the project, ensure you have the following installed:
- Java 17+
- Make sure the maven bin folder is defined in system env path.
- Git (optional, for version control)
- Make sure system has installed latest version of Allure for generating html report
-
Clone the repository:
git clone https://github.com/mookto/HRMS-Solution-Automation-Maven.git
- Run all tests:
mvn clean install mvn clean test
- After running all tests, check the report in the specific path ,
- The Path target/cucumber-html-report
- Valid user login (
LoginTestRunner.java) - Verify dashboard redirection after login
- Create a new employee (
EmployeeManagementTestRunner.java) - Edit existing employee details
- Assign a supervisor
- Edit a supervisor
- Close an employee
- Apply for leave (
LeaveManagementTestRunner.java) - Implementation pending...
- Manage employee attendance (
AttendanceManagementTestRunner.java) - Implementation pending...
- Manage official letter (
OfficialLetterTestRunner.java) - Create official letter type
- Create official letter
- Implementation pending...
- Manage payroll (
PayrollManagementTestRunner.java) - Implementation pending...
- Manage reports (
ReportsTestRunner.java) - Implementation pending...
- Manage payroll (
RosterManagementTestRunner.java) - Implementation pending...
- Manage payroll (
SettingsTestRunner.java) - Implementation pending...
- Fork the repository.
- Create a new branch:
git checkout -b feature-branch
- Commit changes:
git commit -m "Add new feature" - Push and create a pull request.
- Implement CI/CD integration
- Enhance reporting with Allure Reports
- Mahedi Hasan