diff --git a/README.md b/README.md index aceaa9cb93..eee49919d7 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,43 @@ # MOSIP Functional Tests -## Overview +The **`mosip-functional-tests`** repository contains the reusable **`apitest-commons`** library, which simplifies API testing with pre-built utilities and helpers. The **`apitest-commons`** can be used as a dependency in POM files for MOSIP testrigs of all the modules and can consume the reusable codes. -The API Test Rig Commons is a shared code base that is used for the execution of module-wise automation API tests. This uses Java REST Assured and TestNG frameworks to automate testing for different modules like Pre-registration, Masterdata, Partner Management, PMS, ID Repository, IDA, Resident, E-Signet, and Mimoto. +--- -## Pre-requisites +## Repository Structure -Ensure the following software is installed on the machine from where the automation tests will be executed: +This repository consists of: +1. **`apitest-commons`**: + - A reusable library for API testing. + - Released independently to [Maven Central](https://search.maven.org/) under the artifact ID `apitest-commons`. + - Includes its own [README](apitest-commons/README.md) for detailed instructions on setup and usage. -- Java 21 -- Maven 3.9.6 or higher -- Lombok (Refer to [Lombok Project](https://projectlombok.org/)) +--- -### For Windows +## Prerequisites -- Git Bash 2.18.0 or higher -- `settings.xml` needs to be present in the `.m2` folder. +To use this repository, ensure you have: +- **Java 21** ([download here](https://jdk.java.net/)). +- **Maven 3.9.6** or higher ([installation guide](https://maven.apache.org/install.html)). +- Access to necessary MOSIP services or mocked test environments. -### For Linux +--- -- `settings.xml` file needs to be present in two places: - - Regular Maven conf folder - - Copy the same `settings.xml` under `/usr/local/maven/conf` +## Apitest Commons -## Access Test Automation Code +### Setting Up and Building the Project +- Refer to the ReadMe file [README](apitest-commons/README.md) -### From Browser +### Using it as dependency in the Project +- Add the following dependency in the POM of required project + ```sh + + io.mosip.testrig.apirig.apitest.commons + apitest-commons + 1.3.0 + -1. Clone or download the repository as a zip file from [GitHub](https://github.com/mosip/mosip-functional-tests). -2. Unzip the contents. -3. Continue with the steps below from a terminal (Linux) or command prompt (Windows). - -### From Git Bash - -1. Copy the git link: `https://github.com/mosip/mosip-functional-tests` -2. On your local system, open Git Bash at any location. -3. Run the following command: - ```sh - git clone https://github.com/mosip/mosip-functional-tests - -## Build Test Automation Code -1. cd ../apitest-commons -2. `mvn clean install -Dgpg.skip=true -Dmaven.gitcommitid.skip=true` +--- ## License This project is licensed under the terms of [Mozilla Public License 2.0](https://github.com/mosip/mosip-platform/blob/master/LICENSE) diff --git a/apitest-commons/README.md b/apitest-commons/README.md index 51b6226796..60537aa052 100644 --- a/apitest-commons/README.md +++ b/apitest-commons/README.md @@ -1,3 +1,92 @@ -# Automation test +# API Test Commons -All automation test code. +## Overview + +The API Test Commons is a shared codebase used for executing module-wise automation API tests. It utilizes Java REST Assured and TestNG frameworks to automate testing for various modules, including: +- Pre-registration +- Masterdata +- Partner Management +- PMS +- ID Repository +- IDA +- Resident +- ESignet +- ESignet-signup +- Mimoto +- Inji-Certify + +--- + +## Pre-requisites + +Ensure the following software is installed on the machine from where the automation tests will be executed: + +- **Java 21** ([download here](https://jdk.java.net/)). +- **Maven 3.9.6** or higher ([installation guide](https://maven.apache.org/install.html)). +- **Lombok** (Refer to [Lombok Project](https://projectlombok.org/)) + +--- + +### For Windows + +- Git Bash 2.18.0 or higher +- `settings.xml` needs to be present in the `.m2` folder. + +### For Linux + +- `settings.xml` file needs to be present in two places: + - Regular Maven conf folder + - Copy the same `settings.xml` under `/usr/local/maven/conf` + +--- + +## Access Test Automation Code + +### From Browser + +1. Clone or download the repository as a zip file from [GitHub](https://github.com/mosip/mosip-functional-tests). +2. Unzip the contents. +3. Continue with the steps below from a terminal (Linux) or command prompt (Windows). + +### From Git Bash + +1. Copy the git link: `https://github.com/mosip/mosip-functional-tests` +2. Open Git Bash at your desired location on your local systemn. +3. Run the following command to clone the repository: + ```sh + git clone https://github.com/mosip/mosip-functional-tests + +--- + +## Update the property file +1. Navigate to the kernel.properties file located at: + ```sh + mosip-functional-tests\apitest-commons\src\main\resources\config\kernel.properties +2. Open the file in your preferred editor +3. Update the client secret values and other required credentials as per your environment + +--- + +## Build Test Automation Code +1. From the already opened Git Bash, navigate to the apitest-commons directory: + ```sh + cd mosip-functional-tests/apitest-commons/ +2. Run the following Maven command: + ```sh + mvn clean install -Dgpg.skip=true -Dmaven.gitcommitid.skip=true + +--- + +## Using Apitest Commons as a dependency in the Project +- Add the following dependency in the POM of required project + ```sh + + io.mosip.testrig.apirig.apitest.commons + apitest-commons + 1.3.0 + + +--- + +## License +This project is licensed under the terms of [Mozilla Public License 2.0](https://github.com/mosip/mosip-platform/blob/master/LICENSE)