Release Name: API Test Commons Releases
Release version: 1.3.0
Release Date: 12th December, 2024
The 1.3.0 release incorporates new features and enhancements to improve the functionality, usability, and performance of the MOSIP Functional Tests. This update addresses several critical issues to ensure a more seamless user experience.
Migrated to Java 21:
Migrated the Api Test Commons library from Java 11 to Java 21
Removed “kernel-registration-packet-manager” and “kernel-crypto-jce” libraries as these are not compatible with Java 21 migration and implemented crypto core class inside the apitest commons for encrypt and decrypt utils
Removed automatic dependency injection added for adopting crypto core class from “kernel-crypto-jce” library
Array Handles:
Added functionality to generate and update the request body with an array of handles for Identity API to create the UIN through the Id-Repository module
Refer to Swagger Link for api details, change the environment as per requirement in the URL
Skip and Report known Issues/Failures:
Implementation of skipping the testcases for the known issues/failures with the bug that will be fixed in the future.
Skipped details will be displayed in the report
Component Base URL’s:
Added logic to handle dependent services, allowing them to run in different environments based on Base URLs provided in the configuration property
Unique Identifier:
Introducing the unique identifier and mapping with the master testcase sheet for easy accessibility of the testcases between the api testrig and the master testcase sheet which helps to identify the api testrig easily failed testcases in the master testcase sheet
Displaying the unique identifier in the report
Context URL:
Now, the backward compatibility for the mimoto context URL
/residentmobileapp/v1/mimoto has been implemented.
Storing Reports in Mount/ Configured Path:
Added flexibility for storing the Test reports in either an S3 bucket or mounted path.
The config property used “push-reports-to-s3” is No.
The configured mount volume path is “/home/mosip/testrig/report”.
It helps when the service is deployed in non-MOSIP environments.
WebSocket util:
Created the util class for creating the connection and sending the message through WebSocket to support the KYC process testing
Report Generation:
Enhanced the reporting module to provide more detailed and comprehensive reports, improving the visibility and traceability of test results.
Restructured Config Manager:
Restructured config manager to hold only the common configurations in apitest commons and moved the module specific properties to the respective modules
Removed Component Specific Code:
Moved the module specific implementations from apitest commons to the respective modules.
Moved the suite setup into respective modules test runner class.
Generic DB Manager:
Optimized DB manager by removing the module specific code and making it more generic
Module specific DB execution implementations are moved to respective modules
Renamed the Classes:
MockSMTPListener class in the “io.mosip.testrig.apirig.testrunner” package is renamed to OTPListener as this class is used to listen to the OTP from the Mock SMTP
Mock MDS:
Modified the quality score data type to be compatible with Java 21 migrated mock MDS library
Addressed compatibility issues with the latest versions of dependent services and libraries.
Eliminated redundant log entries to streamline output and improve readability.
Resolved issues causing intermittent crashes during API tests.
Enhanced and improved the apitest commons quality.
apitest-common 1.3.0
Ensure the following software is installed on the machine from where the automation tests will be executed:
Java 21
Maven 3.9.6 or higher
Lombok (Refer to Lombok Project)
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
To access the Test Automation Code:
1. From Browser
Clone or download the repository as a zip file from GitHub.
Unzip the contents.
Continue with the steps below from a terminal (Linux) or command prompt (Windows).
2. From Git Bash
Copy the git link: https://github.com/mosip/mosip-functional-tests
On your local system, open Git Bash at any location.
Run the following command: git clone https://github.com/mosip/mosip-functional-tests
Build Test Automation Code
Navigate to the apitest-commons directory: cd ../apitest-commons
Build the project: mvn clean install -Dgpg.skip=true -Dmaven.gitcommitid.skip=true
Ensure all prerequisites are met before running the updated tests.
Refer to the updated README file for detailed setup and execution instructions.
For any issues or further assistance, please open an issue on GitHub.
Find all the latest releases here