MOSIP-43088 - Dockerised the inji mobile ui automation and updated automation to support esignet 1.6.2 (#2096)

Signed-off-by: Mohanachandran S <mohanachandran.s@technoforte.co.in>
This commit is contained in:
Mohanachandran S
2025-10-07 07:54:09 +05:30
committed by GitHub
parent 8f17535a25
commit d62e462454
44 changed files with 457 additions and 133 deletions

BIN
.github/keys/mosipgpgkey_pub.gpg vendored Normal file

Binary file not shown.

BIN
.github/keys/mosipgpgkey_sec.gpg vendored Normal file

Binary file not shown.

View File

@@ -56,3 +56,93 @@ jobs:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
ORG_KEY: ${{ secrets.ORG_KEY }}
SLACK_WEBHOOK_URL: '${{ secrets.SLACK_WEBHOOK_INJI_TEAM }}'
build-maven-uitest-inji-wallet:
uses: mosip/kattu/.github/workflows/maven-build.yml@master-java21
with:
SERVICE_LOCATION: ./injitest
BUILD_ARTIFACT: uitest-inji-wallet
secrets:
OSSRH_USER: ${{ secrets.OSSRH_USER }}
OSSRH_SECRET: ${{ secrets.OSSRH_SECRET }}
OSSRH_TOKEN: ${{ secrets.OSSRH_TOKEN }}
GPG_SECRET: ${{ secrets.GPG_SECRET }}
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_INJI_TEAM }}
build-uitest-inji-wallet-local:
needs: build-maven-uitest-inji-wallet
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.dev_namespace_docker_hub }}
SERVICE_NAME: uitest-inji-wallet
SERVICE_LOCATION: injitest
BUILD_ARTIFACT: uitest-inji-wallet-local
steps:
- uses: actions/checkout@v3
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '21'
server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
settings-path: ${{ github.workspace }} # location for the settings.xml file
- name: Cache local Maven repository
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Setup the settings file for ossrh server
run: echo "<settings> <servers> <server> <id>ossrh</id> <username>${{secrets.ossrh_user}}</username> <password>${{secrets.ossrh_secret}}</password> </server> </servers> <profiles> <profile> <id>ossrh</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <gpg.executable>gpg2</gpg.executable> <gpg.passphrase>${{secrets.gpg_secret}}</gpg.passphrase> </properties> </profile> <profile> <id>allow-snapshots</id> <activation><activeByDefault>true</activeByDefault></activation> <repositories> <repository> <id>snapshots-repo</id> <url>https://oss.sonatype.org/content/repositories/snapshots</url> <releases><enabled>false</enabled></releases> <snapshots><enabled>true</enabled></snapshots> </repository> <repository> <id>releases-repo</id> <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url> <releases><enabled>true</enabled></releases> <snapshots><enabled>false</enabled></snapshots> </repository> </repositories> </profile> <profile> <id>sonar</id> <properties> <sonar.sources>.</sonar.sources> <sonar.host.url>https://sonarcloud.io</sonar.host.url> </properties> <activation> <activeByDefault>false</activeByDefault> </activation> </profile> </profiles> </settings>" > $GITHUB_WORKSPACE/settings.xml
- name: Build uitest-inji-wallet with Maven
run: |
cd ${{ env.SERVICE_LOCATION}}
mvn -U -B package -DskipTests -Dmaven.wagon.http.retryHandler.count=2 --file pom.xml -s $GITHUB_WORKSPACE/settings.xml
- name: Ready the springboot artifacts
if: ${{ !contains(github.ref, 'master') || !contains(github.ref, 'main') }}
run: |
## FIND JARS & COPY ONLY EXECUTABLE JARs STORED UNDER TARGET DIRECTORY
find ${{ env.SERVICE_LOCATION }} -path '*/target/*' -name '*.jar' -type f -exec zip ${{ env.BUILD_ARTIFACT }}.zip {} +
- name: Upload the springboot jars
if: ${{ !contains(github.ref, 'master') || !contains(github.ref, 'main') }}
uses: actions/upload-artifact@v4
with:
name: ${{ env.BUILD_ARTIFACT }}
path: ${{ env.BUILD_ARTIFACT }}.zip
- uses: 8398a7/action-slack@v3
with:
status: ${{ job.status }}
fields: repo,message,author,commit,workflow,job # selectable (default: repo,message)
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} # required
if: failure() # Pick up events even if the job fails or is canceled.
build-docker-uitest-inji-wallet:
needs: build-uitest-inji-wallet-local
strategy:
matrix:
include:
- SERVICE_LOCATION: 'injitest'
SERVICE_NAME: 'uitest-inji-wallet'
BUILD_ARTIFACT: 'uitest-inji-wallet-local'
ONLY_DOCKER: true
fail-fast: false
name: ${{ matrix.SERVICE_NAME }}
uses: mosip/kattu/.github/workflows/docker-build.yml@master-java21
with:
SERVICE_LOCATION: ${{ matrix.SERVICE_LOCATION }}
SERVICE_NAME: ${{ matrix.SERVICE_NAME }}
BUILD_ARTIFACT: ${{ matrix.BUILD_ARTIFACT }}
ONLY_DOCKER: ${{ matrix.ONLY_DOCKER }}
secrets:
DEV_NAMESPACE_DOCKER_HUB: ${{ secrets.DEV_NAMESPACE_DOCKER_HUB }}
ACTOR_DOCKER_HUB: ${{ secrets.ACTOR_DOCKER_HUB }}
RELEASE_DOCKER_HUB: ${{ secrets.RELEASE_DOCKER_HUB }}
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_INJI_TEAM }}

66
injitest/Dockerfile Normal file
View File

@@ -0,0 +1,66 @@
FROM mosipid/openjdk-21-jre:21.0.4
# Define build-time arguments
ARG SOURCE
ARG COMMIT_HASH
ARG COMMIT_ID
ARG BUILD_TIME
# Set labels for metadata
LABEL source=${SOURCE}
LABEL commit_hash=${COMMIT_HASH}
LABEL commit_id=${COMMIT_ID}
LABEL build_time=${BUILD_TIME}
# Define build-time arguments for user and group
ARG container_user=mosip
ARG container_user_group=mosip
ARG container_user_uid=1001
ARG container_user_gid=1001
ARG KUBECTL_VERSION=1.22.9
# Set working directory for the user
WORKDIR /home/${container_user}/
ENV work_dir=/home/${container_user}/
# Copy files
COPY ./injitest/target $work_dir/
COPY application.properties $work_dir/
COPY ["Biometric Devices", "$work_dir/Biometric Devices"]
COPY ["resource", "$work_dir/resource"]
COPY testNgXmlFiles $work_dir/testNgXmlFiles
COPY androidConfig.yml $work_dir/
COPY iosConfig.yml $work_dir/
COPY entrypoint.sh $work_dir
# install packages and create user
RUN apt-get -y update \
&& apt-get install -y unzip jq curl \
&& groupadd -g ${container_user_gid} ${container_user_group} \
&& useradd -u ${container_user_uid} -g ${container_user_group} -s /bin/bash -m ${container_user} \
&& curl -LO "https://storage.googleapis.com/kubernetes-release/release/v${KUBECTL_VERSION}/bin/linux/amd64/kubectl" \
&& mkdir -p /home/${container_user} \
&& chmod +x kubectl $work_dir/entrypoint.sh \
&& mv kubectl /usr/local/bin/ \
&& chown -R ${container_user}:${container_user} /home/${container_user} /etc/ssl/certs/java/cacerts \
&& chmod 644 /etc/ssl/certs/java/cacerts
# Switch to the specified user for the subsequent commands
USER ${container_user_uid}:${container_user_gid}
# Create necessary directories
RUN mkdir -p /home/mosip/test-output && chmod -R 777 /home/mosip/test-output
RUN mkdir -p /home/mosip/screenshots && chmod -R 777 /home/mosip/screenshots
# Expose port if needed
EXPOSE 8083
# Environment variables
ENV MODULES=
ENV ENV_USER=
ENV ENV_ENDPOINT=
ENV ENV_TESTLEVEL=smokeAndRegression
ENV ENV_TESTNG_XML_FILE=
ENV ENV_BROWSERSTACK_CONFIG=
ENTRYPOINT ["./entrypoint.sh"]

View File

@@ -18,3 +18,7 @@
[Thu, 14 Aug 2025 05:38:21 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\daemonInstance - \\.\pipe\browserstack\daemonInstance
[Thu, 14 Aug 2025 06:21:13 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\daemonInstance - \\.\pipe\browserstack\daemonInstance
[Thu, 14 Aug 2025 07:12:11 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\daemonInstance - \\.\pipe\browserstack\daemonInstance
[Fri, 19 Sep 2025 11:06:06 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\daemonInstance - \\.\pipe\browserstack\daemonInstance
[Fri, 19 Sep 2025 12:35:59 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\RANCHER_AUTOMATION_TUNNELdaemonInstance - \\.\pipe\browserstack\RANCHER_AUTOMATION_TUNNELdaemonInstance
[Fri, 19 Sep 2025 12:50:21 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\RANCHER_AUTOMATION_TUNNELdaemonInstance - \\.\pipe\browserstack\RANCHER_AUTOMATION_TUNNELdaemonInstance
[Fri, 19 Sep 2025 14:03:23 GMT] Error from server Error: listen EADDRINUSE: address already in use \\.\pipe\browserstack\RANCHER_AUTOMATION_TUNNELdaemonInstance - \\.\pipe\browserstack\RANCHER_AUTOMATION_TUNNELdaemonInstance

10
injitest/entrypoint.sh Normal file
View File

@@ -0,0 +1,10 @@
#!/bin/bash
# Run JAR with system properties before -jar
java -Dmodules="$MODULES" \
-Denv.user="$ENV_USER" \
-Denv.endpoint="$ENV_ENDPOINT" \
-Denv.testLevel="$ENV_TESTLEVEL" \
-DtestngXmlFile="$ENV_TESTNG_XML_FILE" \
-Dbrowserstack.config="$ENV_BROWSERSTACK_CONFIG" \
-jar uitest-inji-wallet-*.jar

View File

@@ -2,13 +2,13 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>inji</groupId>
<artifactId>injitest</artifactId>
<groupId>io.mosip.inji</groupId>
<artifactId>inji-wallet</artifactId>
<version>0.20.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>inji-mob-automation</name>
<description>inji-mob-automation</description>
<url>https://github.com/mosip/inji/injitest</url>
<name>uitest-inji-wallet</name>
<description>Project for Inji Mobile UI Automation</description>
<url>https://github.com/mosip/inji-wallet</url>
<licenses>
<license>
@@ -17,9 +17,9 @@
</license>
</licenses>
<scm>
<connection>scm:git:git://github.com/mosip/admin-ui.git</connection>
<developerConnection>scm:git:ssh://github.com:mosip/admin-ui.git</developerConnection>
<url>https://github.com/mosip/inji/injitest</url>
<connection>scm:git:git://github.com/mosip/inji-wallet.git</connection>
<developerConnection>scm:git:ssh://github.com/mosip/inji-wallet.git</developerConnection>
<url>https://github.com/mosip/inji-wallet</url>
<tag>HEAD</tag>
</scm>
<developers>
@@ -27,9 +27,20 @@
<name>Mosip</name>
<email>mosip.emailnotifier@gmail.com</email>
<organization>io.mosip</organization>
<organizationUrl>https://github.com/mosip/inji/injitest</organizationUrl>
<organizationUrl>https://github.com/mosip/inji-wallet</organizationUrl>
</developer>
</developers>
<repositories>
<repository>
<id>ossrh-central</id>
<name>MavenCentralRepository</name>
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
<layout>default</layout>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>21</maven.compiler.source>
@@ -37,6 +48,10 @@
<surefire.plugin.version>3.5.3</surefire.plugin.version>
<log4j.version>2.25.1</log4j.version>
<jackson.version>2.14.3</jackson.version>
<maven.gpg.plugin.version>1.5</maven.gpg.plugin.version>
<maven.shade.plugin.version>3.6.1</maven.shade.plugin.version>
<central.publishing.maven.plugin.version>0.7.0</central.publishing.maven.plugin.version>
<jarName>uitest-inji-wallet-0.20.0-SNAPSHOT-jar-with-dependencies</jarName>
</properties>
<dependencies>
<dependency>
@@ -192,6 +207,16 @@
<version>5.1.2</version>
</dependency>
</dependencies>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://central.sonatype.com/api/v1/publisher</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
@@ -234,6 +259,69 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>${central.publishing.maven.plugin.version}</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>ossrh</publishingServerId>
<autoPublish>false</autoPublish>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>${maven.shade.plugin.version}</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<finalName>${jarName}}</finalName>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>inji.runner.MosipTestRunner</mainClass>
</transformer>
</transformers>
<!-- add this to prevent some security issues when
merging everything together -->
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven.gpg.plugin.version}</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

View File

@@ -36,7 +36,9 @@ public class AppUnlockMethodPage extends BasePage {
}
public SetPasscode clickOnUsePasscode() {
click(usePasscodeButton, "Click on 'Use Passcode' button to proceed");
if (isElementVisible(usePasscodeButton)) {
click(usePasscodeButton, "Click on 'Use Passcode' button to proceed");
}
return new SetPasscode(driver);
}

View File

@@ -140,6 +140,8 @@ public class BasePage {
ExtentReportManager.getTest().log(Status.FAIL, "Failed to click on element: " + describeElement(element));
throw e;
}
} else {
throw new RuntimeException("Element not visible: " + stepDesc);
}
}
@@ -166,6 +168,8 @@ public class BasePage {
if (isElementVisible(element)) {
element.sendKeys(text);
logStep(stepDesc + " - Entered text: '" + text + "'", element);
} else {
throw new RuntimeException("Element not visible: " + stepDesc);
}
}
@@ -174,6 +178,8 @@ public class BasePage {
element.clear();
element.sendKeys(text);
logStep(stepDesc + " - Cleared and entered: '" + text + "'", element);
} else {
throw new RuntimeException("Element not visible: " + stepDesc);
}
}

View File

@@ -1,5 +1,6 @@
package inji.pages;
import inji.utils.InjiWalletConfigManager;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.HidesKeyboard;
import io.appium.java_client.pagefactory.AndroidFindBy;
@@ -11,6 +12,8 @@ import java.util.Map;
public class ESignetLoginPage extends BasePage {
private static final String mosipIssuerCredentialType = InjiWalletConfigManager.getproperty("mosip.issuer.credentialType");
@iOSXCUITFindBy(iOSClassChain = "**/XCUIElementTypeStaticText[`label == \"“Inji” Wants to Use “mosip.net” to Sign In\"`]")
private WebElement iosSignInPermissionPopup;
@@ -30,7 +33,7 @@ public class ESignetLoginPage extends BasePage {
@iOSXCUITFindBy(xpath = "//android.view.View[@resource-id=\"navbar-header\"]/android.widget.Image[1]")
private WebElement ESignetLogo;
@AndroidFindBy(xpath = "//android.widget.EditText[@resource-id=\"Otp_mosip-vid\"]")
@AndroidFindBy(xpath = "//android.widget.EditText[@resource-id=\"Otp_vid\"]")
@iOSXCUITFindBy(className = "XCUIElementTypeTextField")
private WebElement enterIdTextBox;
@@ -38,12 +41,12 @@ public class ESignetLoginPage extends BasePage {
@iOSXCUITFindBy(accessibility = "Get OTP")
private WebElement getOtpButton;
@AndroidFindBy(uiAutomator = "new UiSelector().className(\"android.widget.Button\").instance(1)")
@AndroidFindBy(xpath = "//android.widget.Button[@resource-id=\"verify_otp\"]")
@iOSXCUITFindBy(accessibility = "Verify")
private WebElement verifyButton;
@AndroidFindBy(xpath = "//*[contains(@text,'OTP has been sent to your registered Mobile Number')]")
@iOSXCUITFindBy(xpath = "//*[contains(@text,'OTP has been sent to your registered Mobile Number')]")
@AndroidFindBy(xpath = "//*[contains(@text,'Please enter the 6-digit OTP sent to')]")
@iOSXCUITFindBy(xpath = "//*[contains(@text,'Please enter the 6-digit OTP sent to')]")
private WebElement otpSendMessage;
@AndroidFindBy(className = "android.view.ViewGroup")
@@ -122,6 +125,10 @@ public class ESignetLoginPage extends BasePage {
}
public OtpVerificationPage setEnterIdTextBox(String uinOrVid) {
if ("iOS".equalsIgnoreCase(driver.getCapabilities().getCapability("platformName").toString())) {
click(enterIdTextBox, "Click on Enter ID textbox to enter UIN or VID"); // Needed for iOS before typing
}
enterText(enterIdTextBox, uinOrVid, "Enter UIN or VID in Enter ID textbox");
return new OtpVerificationPage(driver);
}
@@ -201,6 +208,6 @@ public class ESignetLoginPage extends BasePage {
}
public void clickOnCredentialTypeHeadingMOSIPVerifiableCredential() {
click(credentialTypeHeadingMOSIPVerifiableCredential, "Click on Credential Type heading - MOSIP Verifiable Credential");
scrollAndClickByAccessibilityId(mosipIssuerCredentialType, "Click on 'MOSIP Verifiable Credential' option");
}
}

View File

@@ -25,7 +25,7 @@ public class MockCertifyLoginPage extends BasePage {
@iOSXCUITFindBy(xpath = "//*[contains(@text,'Login with e-Signet')]")
private WebElement esignetLoginHeader;
@AndroidFindBy(xpath = "//*[contains(@text,'Please enter your UIN/VID')]")
@AndroidFindBy(xpath = "//android.widget.EditText[@resource-id=\"Otp_vid\"]")
@iOSXCUITFindBy(xpath = "//*[contains(@text,'Please enter your UIN/VID'')]")
private WebElement enterYourVidTextHeader;
@@ -38,12 +38,12 @@ public class MockCertifyLoginPage extends BasePage {
private WebElement getOtpButton;
@AndroidFindBy(uiAutomator = "new UiSelector().className(\"android.widget.Button\").instance(1)")
@AndroidFindBy(xpath = "//android.widget.Button[@resource-id=\"verify_otp\"]")
@iOSXCUITFindBy(accessibility = "Verify")
private WebElement verifyButton;
@AndroidFindBy(xpath = "//*[contains(@text,'OTP has been sent to your registered Mobile Number')]")
@iOSXCUITFindBy(xpath = "//*[contains(@text,'OTP has been sent to your registered Mobile Number')]")
@AndroidFindBy(xpath = "//*[contains(@text,'Please enter the 6-digit OTP sent to')]")
@iOSXCUITFindBy(xpath = "//*[contains(@text,'Please enter the 6-digit OTP sent to')]")
private WebElement otpSendMessage;
@AndroidFindBy(className = "android.view.ViewGroup")
@@ -140,6 +140,7 @@ public class MockCertifyLoginPage extends BasePage {
}
public void clickOnGetOtpButton() {
((HidesKeyboard) driver).hideKeyboard();
click(getOtpButton, "Clicking on Get OTP button");
}

View File

@@ -6,6 +6,7 @@ import io.appium.java_client.pagefactory.AndroidFindBy;
import io.appium.java_client.pagefactory.iOSXCUITFindBy;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.ExpectedConditions;
import java.util.List;
@@ -18,6 +19,9 @@ public class SetPasscode extends BasePage {
@iOSXCUITFindBy(accessibility = "Done")
private WebElement doneButton;
@iOSXCUITFindBy(accessibility = "Enter OTP")
private WebElement enterOtpHeader;
@AndroidFindBy(xpath = "//android.view.View[contains(@resource-id, \"otp_verify_input\")]//android.widget.EditText[1]")
@iOSXCUITFindBy(xpath = "//XCUIElementTypeOther[@name=\"eSignet\"]/XCUIElementTypeOther[6]/XCUIElementTypeTextField[1]")
private WebElement inputOtp;
@@ -106,21 +110,23 @@ public class SetPasscode extends BasePage {
}
private void enterOtpIosForeSignet(char[] arr) {
String baseXpath = isElementVisible(inputOtp)
? "//XCUIElementTypeOther[@name=\"eSignet\"]/XCUIElementTypeOther[6]/XCUIElementTypeTextField"
: "//XCUIElementTypeOther[@name=\"eSignet\"]/XCUIElementTypeOther[7]/XCUIElementTypeTextField";
if (isElementVisible(enterOtpHeader)) {
String baseXpath = "//*[@type='XCUIElementTypeTextField' or @type='XCUIElementTypeSecureTextField']";
List<WebElement> fields = driver.findElements(By.xpath(baseXpath));
for (int i = 0; i < arr.length; i++) {
WebElement passcodeInput = driver.findElement(By.xpath("(" + baseXpath + ")[" + (i + 1) + "]"));
if (fields.size() < arr.length) {
throw new IllegalStateException("Not enough input fields to enter OTP on iOS eSignet.");
}
for (int i = 0; i < arr.length; i++) {
fields.get(i).sendKeys(String.valueOf(arr[i]));
if (i==0) {
click(passcodeInput, "Click on the passcode field");
}
enterText(passcodeInput, String.valueOf(arr[i]), "Entering passcode digit in field " + (i + 1));
}
} else {
throw new IllegalStateException("Enter OTP header is not visible on iOS Esignet.");
}
}
private void enterOtpAndroidForeSignet(char[] arr) {
String baseXpath = isElementVisible(inputOtp)
? "//android.view.View[contains(@resource-id, \"otp_verify_input\")]//android.widget.EditText"

View File

@@ -116,7 +116,7 @@ public class SharePage extends BasePage {
public SharePage acceptPermissionPopupBluetoothIos() {
click(okButtonIos, "Click on OK Button (iOS)");
click(AllowButtonIos, "Click on Allow Button (iOS)");
// click(AllowButtonIos, "Click on Allow Button (iOS)");
return this;
}

View File

@@ -23,15 +23,15 @@ public class SunbirdLoginPage extends BasePage {
private WebElement loginWithKBA;
@AndroidFindBy(xpath = "//*[@resource-id=\"_form_policyNumber\"]")
@iOSXCUITFindBy(xpath = "//XCUIElementTypeTextField[@name=\"Please fill in this field\" and @value=\"Policy Number\"]")
@iOSXCUITFindBy(xpath = "//XCUIElementTypeTextField[@value=\"Policy Number\"]")
private WebElement enterPolicyTextBox;
@AndroidFindBy(xpath = "//android.widget.EditText[@resource-id=\"_form_fullName\"]")
@iOSXCUITFindBy(iOSClassChain = "**/XCUIElementTypeTextField[`name == \"Please fill in this field\"`][2]")
@iOSXCUITFindBy(xpath = "//XCUIElementTypeTextField[@value=\"Full Name\"]")
private WebElement enterFullNameTextBox;
@AndroidFindBy(uiAutomator = "UiSelector().className(\"android.widget.Spinner\")")
@iOSXCUITFindBy(iOSClassChain = "**/XCUIElementTypeOther[`name == \"Please fill in this field\"`]")
@iOSXCUITFindBy(iOSClassChain = "**/XCUIElementTypeOther[`name == \"eSignet\"`]/XCUIElementTypeOther[10]")
private WebElement enterDateOfBirthTextBox;
@iOSXCUITFindBy(xpath = "//XCUIElementTypePickerWheel[@value=\"2025\"]")
@@ -189,7 +189,7 @@ public class SunbirdLoginPage extends BasePage {
private WebElement setButton;
@AndroidFindBy(xpath = "//*[contains(@text,'CONTINUE')]")
@iOSXCUITFindBy(xpath = "//*[contains(@text,'CONTINUE')]")
@iOSXCUITFindBy(accessibility = "Continue")
private WebElement continuePopupButton;
public void clickOnLoginWithKbaButton() {

View File

@@ -12,6 +12,7 @@ import inji.driver.DriverManager;
import inji.models.Policy;
import inji.models.Uin;
import inji.models.Vid;
import inji.utils.BrowserStackLocalManager;
import inji.utils.ExtentReportManager;
import inji.utils.InjiWalletConfigManager;
import inji.utils.testdatamanager.MockUINManager;
@@ -47,6 +48,7 @@ import java.util.Map;
public abstract class BaseTest {
protected Local bsLocal;
private static final ThreadLocal<Uin> threadUin = new ThreadLocal<>();
private static final ThreadLocal<Vid> threadVid = new ThreadLocal<>();
private static final ThreadLocal<Uin> threadMockUin = new ThreadLocal<>();
@@ -62,15 +64,7 @@ public abstract class BaseTest {
@BeforeSuite(alwaysRun = true)
public void beforeSuite() {
ExtentReportManager.initReport();
bsLocal = new Local();
Map<String, String> options = new HashMap<>();
options.put("key", InjiWalletConfigManager.getproperty("browserstack.accesskey"));
options.put("forcelocal", "true");
try {
bsLocal.start(options);
} catch (Exception e) {
throw new RuntimeException("Failed to start BrowserStack Local", e);
}
BrowserStackLocalManager.startLocal();
}
@BeforeMethod(alwaysRun = true)
@@ -205,6 +199,7 @@ public abstract class BaseTest {
@AfterSuite(alwaysRun = true)
public void afterSuite() {
ExtentReportManager.flushReport();
BrowserStackLocalManager.stopLocal();
// Generate final report file name
String timestamp = new SimpleDateFormat("yyyy-MM-dd-HH-mm").format(new Date());
@@ -243,15 +238,6 @@ public abstract class BaseTest {
LOGGER.error("S3 upload failed: {}", e.getMessage(), e);
}
}
// Stop BrowserStack Local
if (bsLocal != null && bsLocal.isRunning()) {
try {
bsLocal.stop();
} catch (Exception e) {
throw new RuntimeException("Failed to stop BrowserStack Local", e);
}
}
}
// Getters for tests

View File

@@ -524,7 +524,7 @@ public class ChangeLanguageTest extends AndroidBaseTest {
// assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(),TestDataReader.readData("fullNameSunbird"));
sunbirdLoginPage.openDetailedSunbirdVcView();
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), TestDataReader.readData("fullNameSunbird"));
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), getPolicyName());
assertEquals(sunbirdLoginPage.getPolicyNameForSunbirdCard(), TestDataReader.readData("policyNameSunbird"));
assertEquals(sunbirdLoginPage.getPhoneNumberForSunbirdCard(), TestDataReader.readData("phoneNumberSunbird"));
assertTrue(sunbirdLoginPage.isDateOfBirthValueForSunbirdCardDisplayed());

View File

@@ -297,7 +297,7 @@ public class DeletingVcTest extends AndroidBaseTest {
// assertTrue(sunbirdLoginPage.isSunbirdCardActive(), "Verify if download sunbird displayed active");
// assertTrue(sunbirdLoginPage.isSunbirdCardLogoDisplayed(), "Verify if download sunbird logo displayed");
// assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(),TestDataReader.readData("fullNameSunbird"));
addNewCardPage.clickOnDoneButton();
MoreOptionsPage moreOptionsPage = homePage.clickOnMoreOptionsButton();
// assertTrue(moreOptionsPage.isMoreOptionsPageLoaded(), "Verify if more options page is displayed");

View File

@@ -229,7 +229,6 @@ public class MosipOtpAlternativeFlow extends AndroidBaseTest {
// assertTrue(moreOptionsPage.isMoreOptionsPageLoaded(), "Verify if more options page is displayed");
// moreOptionsPage.clickOnCloseButton();
addNewCardPage.clickOnDoneButton();
assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
}
@@ -300,7 +299,7 @@ public class MosipOtpAlternativeFlow extends AndroidBaseTest {
otpVerification.enterOtpForeSignet(getOtp(), PlatformType.ANDROID);
esignetLoginPage.clickOnVerifyButton();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
// assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
HistoryPage historyPage = homePage.clickOnHistoryButton();

View File

@@ -63,7 +63,7 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends AndroidBaseTest {
moreOptionsPage.clickOnPinOrUnPinCard();
detailedVcViewPage.clickOnBackArrow();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
assertTrue(homePage.isPinIconDisplayed(), "Verify if pin icon on vc is displayed");
@@ -134,7 +134,7 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends AndroidBaseTest {
otpVerification.enterOtpForeSignet(getOtp(), PlatformType.ANDROID);
esignetLoginPage.clickOnVerifyButton();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
// assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
MoreOptionsPage moreOptionsPage = homePage.clickOnMoreOptionsButton();
@@ -215,7 +215,7 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends AndroidBaseTest {
otpVerification.enterOtpForeSignet(getOtp(), PlatformType.ANDROID);
esignetLoginPage.clickOnVerifyButton();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
// assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
MoreOptionsPage moreOptionsPage = new MoreOptionsPage(getDriver());

View File

@@ -211,7 +211,7 @@ public class NoNetworkAndroidTest extends AndroidBaseTest {
assertTrue(helpPage.isHelpPageLoaded(), "Verify if help page is displayed");
helpPage.exitHelpPage();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -164,7 +164,7 @@ public class PinVcTest extends AndroidBaseTest {
// assertTrue(moreOptionsPage.isMoreOptionsPageLoaded(), "Verify if more options page is displayed");
moreOptionsPage.clickOnPinOrUnPinCard();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
// assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
homePage.downloadCard();
@@ -183,7 +183,7 @@ public class PinVcTest extends AndroidBaseTest {
esignetLoginPage.clickOnVerifyButton();
assertTrue(homePage.isPinIconDisplayed(), "Verify if pin icon on vc is displayed");
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
homePage.clickOnMoreOptionsButton();

View File

@@ -48,7 +48,7 @@ public class UnlockWithPasscodeTest extends AndroidBaseTest {
// assertTrue(enterYourPasscodePage.isEnterYourPasscodePageLoaded(), "Verify if enter your passcode page is displayed");
enterYourPasscodePage.enterPasscodeOnPasscodePage(TestDataReader.readData("passcode"), PlatformType.ANDROID);
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -44,7 +44,7 @@ public class VerifyHelpPageTest extends AndroidBaseTest {
assertTrue(helpPage.isWhatIsShareWithSelfieTextdHeader(), "verify if share with selfie text displayed");
helpPage.exitHelpPage();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -409,6 +409,7 @@ public class VerifyHistoryTest extends AndroidBaseTest {
sunbirdLoginPage.clickOnLoginButton();
// assertTrue(sunbirdLoginPage.isSunbirdCardActive(), "Verify if download sunbird displayed active");
addNewCardPage.clickOnDoneButton();
assertTrue(sunbirdLoginPage.isSunbirdCardLogoDisplayed(), "Verify if download sunbird logo displayed");
// assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(),TestDataReader.readData("fullNameSunbird"));

View File

@@ -265,7 +265,7 @@ public class ActivateVcTest extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// assertTrue(esignetLoginPage.isEnterYourVidTextDisplayed(), "Verify if Esignet Login page is landed");
// String uin=TestDataReader.readData("uin");

View File

@@ -606,14 +606,13 @@ public class ChangeLanguageTest extends IosBaseTest {
assertTrue(addNewCardPage.isDownloadViaSunbirdDisplayed(), "Verify if download sunbird displayed");
SunbirdLoginPage sunbirdLoginPage = addNewCardPage.clickOnDownloadViaSunbird();
addNewCardPage.clickOnCredentialTypeHeadingInsuranceCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
// addNewCardPage.clickOnContinueButtonInSigninPopupIos();
sunbirdLoginPage.enterPolicyNumber(getPolicyNumber());
sunbirdLoginPage.enterFullName(getPolicyName());
sunbirdLoginPage.enterDateOfBirth();
IosUtil.scrollToElement(getDriver(), 100, 800, 100, 200);
sunbirdLoginPage.clickOnLoginButton();
addNewCardPage.clickOnDoneButton();
assertTrue(sunbirdLoginPage.isSunbirdCardActive(), "Verify if download sunbird displayed active");
SettingsPage settingsPage = homePage.clickOnSettingIcon();
@@ -628,7 +627,7 @@ public class ChangeLanguageTest extends IosBaseTest {
sunbirdLoginPage.openDetailedSunbirdVcView();
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), TestDataReader.readData("fullNameSunbird"));
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), getPolicyName());
assertEquals(sunbirdLoginPage.getPolicyNameForSunbirdCard(), TestDataReader.readData("policyNameSunbird"));
assertEquals(sunbirdLoginPage.getPhoneNumberForSunbirdCard(), TestDataReader.readData("phoneNumberSunbird"));
assertTrue(sunbirdLoginPage.isDateOfBirthValueForSunbirdCardDisplayed());
@@ -966,7 +965,7 @@ public class ChangeLanguageTest extends IosBaseTest {
assertTrue(homePage.verifyAppSettingsHeader("English"), "Verify if app settings header text displayed");
assertTrue(homePage.verifyAppSettingDescription("English"), "Verify if app settings description displayed");
homePage.clickOnNextButton();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}
@@ -1016,7 +1015,7 @@ public class ChangeLanguageTest extends IosBaseTest {
assertTrue(homePage.verifyAppSettingsHeader("Hindi"), "Verify if app settings header text displayed");
assertTrue(homePage.verifyAppSettingDescription("Hindi"), "Verify if app settings description displayed");
homePage.clickOnNextButton();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}
@@ -1066,7 +1065,7 @@ public class ChangeLanguageTest extends IosBaseTest {
assertTrue(homePage.verifyAppSettingsHeader("Kannada"), "Verify if app settings header text displayed");
assertTrue(homePage.verifyAppSettingDescription("Kannada"), "Verify if app settings description displayed");
homePage.clickOnNextButton();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}
@@ -1116,7 +1115,7 @@ public class ChangeLanguageTest extends IosBaseTest {
assertTrue(homePage.verifyAppSettingsHeader("Tamil"), "Verify if app settings header text displayed");
assertTrue(homePage.verifyAppSettingDescription("Tamil"), "Verify if app settings description displayed");
homePage.clickOnNextButton();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}
@@ -1166,7 +1165,7 @@ public class ChangeLanguageTest extends IosBaseTest {
assertTrue(homePage.verifyAppSettingsHeader("Filipino"), "Verify if app settings header text displayed");
assertTrue(homePage.verifyAppSettingDescription("Filipino"), "Verify if app settings description displayed");
homePage.clickOnNextButton();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -210,10 +210,10 @@ public class DeletingVcTest extends IosBaseTest {
AddNewCardPage addNewCardPage = homePage.downloadCard();
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
esignetLoginPage.clickOnCredentialTypeHeadingMOSIPVerifiableCredential();
// esignetLoginPage.clickOnCredentialTypeHeadingMOSIPVerifiableCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin = TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
@@ -274,7 +274,7 @@ public class DeletingVcTest extends IosBaseTest {
// assertTrue(addNewCardPage.isAddNewCardPageLoaded(), "Verify if add new card page is displayed");
SunbirdLoginPage sunbirdLoginPage = addNewCardPage.clickOnDownloadViaSunbird();
addNewCardPage.clickOnCredentialTypeHeadingInsuranceCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
// addNewCardPage.clickOnContinueButtonInSigninPopupIos();
sunbirdLoginPage.enterPolicyNumber(getPolicyNumber());
sunbirdLoginPage.enterFullName(getPolicyName());
@@ -284,7 +284,7 @@ public class DeletingVcTest extends IosBaseTest {
// assertTrue(sunbirdLoginPage.isSunbirdCardActive(), "Verify if download sunbird displayed active");
// assertTrue(sunbirdLoginPage.isSunbirdCardLogoDisplayed(), "Verify if download sunbird logo displayed");
// assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), getPolicyName());
addNewCardPage.clickOnDoneButton();
MoreOptionsPage moreOptionsPage = homePage.clickOnMoreOptionsButton();
// assertTrue(moreOptionsPage.isMoreOptionsPageLoaded(), "Verify if more options page is displayed");

View File

@@ -53,7 +53,7 @@ public class KeyManagmentTest extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin = TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
@@ -114,8 +114,8 @@ public class KeyManagmentTest extends IosBaseTest {
MockCertifyLoginPage mockCertifyLoginPage = addNewCardPage.clickOnDownloadViaMockCertify();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
ESignetLoginPage esignetLoginPage = new ESignetLoginPage(getDriver());
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// ESignetLoginPage esignetLoginPage = new ESignetLoginPage(getDriver());
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = mockCertifyLoginPage.setEnterIdTextBox(getMockUIN());
@@ -171,7 +171,7 @@ public class KeyManagmentTest extends IosBaseTest {
AddNewCardPage addNewCardPage = homePage.downloadCard();
SunbirdLoginPage sunbirdLoginPage = addNewCardPage.clickOnDownloadViaSunbird();
addNewCardPage.clickOnCredentialTypeHeadingInsuranceCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
// addNewCardPage.clickOnContinueButtonInSigninPopupIos();
sunbirdLoginPage.enterPolicyNumber(getPolicyNumber());
sunbirdLoginPage.enterFullName(getPolicyName());
sunbirdLoginPage.enterDateOfBirth();

View File

@@ -41,7 +41,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -79,7 +79,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -131,7 +131,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -184,7 +184,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -204,7 +204,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
// assertTrue(moreOptionsPage.isMoreOptionsPageLoaded(), "Verify if more options page is displayed");
// moreOptionsPage.clickOnCloseButton();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
}
@@ -235,7 +235,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -252,7 +252,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
//assertTrue(pleaseConfirmPopupPage.isPleaseConfirmPopupPageLoaded(), "Verify if pop up page is displayed");
pleaseConfirmPopupPage.clickOnConfirmButton();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
// assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
homePage.downloadCard();
@@ -260,14 +260,14 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
otpVerification.enterOtpForeSignet(InjiWalletUtil.getOtp(), PlatformType.IOS);
esignetLoginPage.clickOnVerifyButtonIos();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
//assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
HistoryPage historyPage = homePage.clickOnHistoryButton();
@@ -306,7 +306,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -357,7 +357,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -441,7 +441,7 @@ public class MosipOtpAlternativeFlow extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();

View File

@@ -39,7 +39,7 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -59,7 +59,7 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends IosBaseTest {
moreOptionsPage.clickOnPinOrUnPinCard();
detailedVcViewPage.clickOnBackArrow();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
assertTrue(homePage.isPinIconDisplayed(), "Verify if pin icon on vc is displayed");
@@ -99,7 +99,7 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -155,10 +155,10 @@ public class MosipOtpAlternativeFlowForHistoryAndPin extends IosBaseTest {
AddNewCardPage addNewCardPage = homePage.downloadCard();
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
esignetLoginPage.clickOnCredentialTypeHeadingMOSIPVerifiableCredential();
// esignetLoginPage.clickOnCredentialTypeHeadingMOSIPVerifiableCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();

View File

@@ -203,7 +203,7 @@ public class NoNetworkIosTest extends IosBaseTest {
assertTrue(helpPage.isHelpPageLoaded(), "Verify if help page is displayed");
helpPage.exitHelpPage();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -35,7 +35,7 @@ public class ShareVcTest extends IosBaseTest {
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
SharePage scanPage = homePage.clickOnShareButton();
scanPage.acceptPermissionPopupBluetoothIos();
scanPage.acceptPermissionPopupCameraIos();
// scanPage.acceptPermissionPopupCameraIos();
assertTrue(scanPage.isNoShareableCardsMessageDisplayed(), "Verify if no shareable cards are available message is displayed");
}

View File

@@ -47,7 +47,7 @@ public class UnlockWithPasscodeTest extends IosBaseTest {
assertTrue(enterYourPasscodePage.isEnterYourPasscodePageLoaded(), "Verify if enter your passcode page is displayed");
enterYourPasscodePage.enterPasscodeOnPasscodePage(TestDataReader.readData("passcode"), PlatformType.IOS);
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -40,7 +40,7 @@ public class VcDownloadAndVerifyUsingEsignetTest extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin = TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
@@ -108,10 +108,10 @@ public class VcDownloadAndVerifyUsingEsignetTest extends IosBaseTest {
AddNewCardPage addNewCardPage = homePage.downloadCard();
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
esignetLoginPage.clickOnCredentialTypeHeadingMOSIPVerifiableCredential();
// esignetLoginPage.clickOnCredentialTypeHeadingMOSIPVerifiableCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String vid = TestDataReader.readData("vid");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getVID());

View File

@@ -40,7 +40,7 @@ public class VcDownloadAndVerifyUsingSunbirdTest extends IosBaseTest {
assertTrue(addNewCardPage.isDownloadViaSunbirdDisplayed(), "Verify if download sunbird displayed");
SunbirdLoginPage sunbirdLoginPage = addNewCardPage.clickOnDownloadViaSunbird();
addNewCardPage.clickOnCredentialTypeHeadingInsuranceCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
// addNewCardPage.clickOnContinueButtonInSigninPopupIos();
sunbirdLoginPage.enterPolicyNumber(getPolicyNumber());
sunbirdLoginPage.enterFullName(getPolicyName());
sunbirdLoginPage.enterDateOfBirth();
@@ -52,7 +52,7 @@ public class VcDownloadAndVerifyUsingSunbirdTest extends IosBaseTest {
// assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(),TestDataReader.readData("fullNameSunbird"));
sunbirdLoginPage.openDetailedSunbirdVcView();
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), TestDataReader.readData("fullNameSunbird"));
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCard(), getPolicyName());
assertEquals(sunbirdLoginPage.getPolicyNameForSunbirdCard(), TestDataReader.readData("policyNameSunbird"));
// assertEquals(sunbirdLoginPage.getPhoneNumberForSunbirdCard(), TestDataReader.readData("phoneNumberSunbird"));
// assertEquals(sunbirdLoginPage.getDateofBirthValueForSunbirdCard(), TestDataReader.readData("dateOfBirthSunbird"));

View File

@@ -40,7 +40,7 @@ public class VerifyHelpPageTest extends IosBaseTest {
assertFalse(helpPage.isHelpPageContentEmpty(), "verifying if help page is not empty");
helpPage.exitHelpPage();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}

View File

@@ -258,10 +258,10 @@ public class VerifyHistoryTest extends IosBaseTest {
// assertTrue(addNewCardPage.isAddNewCardPageLoaded(), "Verify if add new card page is displayed");
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin = TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
@@ -328,10 +328,10 @@ public class VerifyHistoryTest extends IosBaseTest {
// assertTrue(addNewCardPage.isAddNewCardPageLoaded(), "Verify if add new card page is displayed");
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
//String vid = TestDataReader.readData("vid");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getVID());
@@ -399,7 +399,7 @@ public class VerifyHistoryTest extends IosBaseTest {
assertTrue(addNewCardPage.isDownloadViaSunbirdDisplayed(), "Verify if download sunbird displayed");
SunbirdLoginPage sunbirdLoginPage = addNewCardPage.clickOnDownloadViaSunbird();
addNewCardPage.clickOnCredentialTypeHeadingInsuranceCredential();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
// addNewCardPage.clickOnContinueButtonInSigninPopupIos();
sunbirdLoginPage.enterPolicyNumber(getPolicyNumber());
sunbirdLoginPage.enterFullName(getPolicyName());
sunbirdLoginPage.enterDateOfBirth();
@@ -412,7 +412,7 @@ public class VerifyHistoryTest extends IosBaseTest {
sunbirdLoginPage.openDetailedSunbirdVcView();
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCardForDetailView(), TestDataReader.readData("fullNameSunbird"));
assertEquals(sunbirdLoginPage.getFullNameForSunbirdCardForDetailView(), getPolicyName());
assertEquals(sunbirdLoginPage.getPolicyNameForSunbirdCard(), TestDataReader.readData("policyNameSunbird"));
assertEquals(sunbirdLoginPage.getPhoneNumberForSunbirdCard(), TestDataReader.readData("phoneNumberSunbird"));
assertTrue(sunbirdLoginPage.isDateOfBirthValueForSunbirdCardDisplayed());
@@ -455,7 +455,7 @@ public class VerifyHistoryTest extends IosBaseTest {
ESignetLoginPage esignetLoginPage = addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin = TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
@@ -509,7 +509,7 @@ public class VerifyHistoryTest extends IosBaseTest {
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
ESignetLoginPage esignetLoginPage = new ESignetLoginPage(getDriver());
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = mockCertifyLoginPage.setEnterIdTextBox(getMockUIN());
@@ -564,7 +564,7 @@ public class VerifyHistoryTest extends IosBaseTest {
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
ESignetLoginPage esignetLoginPage = new ESignetLoginPage(getDriver());
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
OtpVerificationPage otpVerification = mockCertifyLoginPage.setEnterIdTextBox(getMockUIN());

View File

@@ -89,7 +89,7 @@ public class VerifyWelcomePagesTest extends IosBaseTest {
assertTrue(homePage.verifyAppSettingsHeader("English"), "Verify if app settings header text displayed");
assertTrue(homePage.verifyAppSettingDescription("English"), "Verify if app settings description displayed");
homePage.clickOnNextButton();
homePage.clickOnNextButtonForInjiTour();
// homePage.clickOnNextButtonForInjiTour();
assertTrue(homePage.isHomePageLoaded(), "Verify if home page is displayed");
}
@@ -217,7 +217,7 @@ public class VerifyWelcomePagesTest extends IosBaseTest {
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin=TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());
@@ -265,7 +265,7 @@ public class VerifyWelcomePagesTest extends IosBaseTest {
addNewCardPage.clickOnDownloadViaEsignet();
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
esignetLoginPage.setEnterIdTextBox(getUIN());
esignetLoginPage.clickOnGetOtpButton();
@@ -273,7 +273,7 @@ public class VerifyWelcomePagesTest extends IosBaseTest {
otpVerification.enterOtpForeSignet(InjiWalletUtil.getOtp(), PlatformType.IOS);
esignetLoginPage.clickOnVerifyButtonIos();
addNewCardPage.clickOnDoneButton();
// addNewCardPage.clickOnDoneButton();
assertTrue(homePage.isCredentialTypeValueDisplayed(), "Verify if credential type value is displayed");
homePage.clickOnSettingIcon();
@@ -338,7 +338,7 @@ public class VerifyWelcomePagesTest extends IosBaseTest {
addNewCardPage.clickOnContinueButtonInSigninPopupIos();
esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// esignetLoginPage.clickOnEsignetLoginWithOtpButton();
// String uin=TestDataReader.readData("uin");
OtpVerificationPage otpVerification = esignetLoginPage.setEnterIdTextBox(getUIN());

View File

@@ -29,6 +29,7 @@ public class BrowserStackCapabilitiesLoader {
bStackOptions.put("networkLogs", true); // network logs
bStackOptions.put("interactiveDebugging", true); // optional
bStackOptions.put("local", true); // set to true only if testing local resources
bStackOptions.put("localIdentifier", BrowserStackLocalManager.getLocalIdentifier());// set localIdentifier for browserstack local
// passing credentials here instead of setting via -D
bStackOptions.put("userName", InjiWalletConfigManager.getproperty("browserstack.username"));

View File

@@ -0,0 +1,56 @@
package inji.utils;
import com.browserstack.local.Local;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.HashMap;
import java.util.Map;
public class BrowserStackLocalManager {
private static Local bsLocal;
protected static String localIdentifier;
private static boolean started = false;
private static final Logger LOGGER = LoggerFactory.getLogger(BrowserStackLocalManager.class);
public static synchronized void startLocal() {
if (!started) {
try {
bsLocal = new Local();
localIdentifier = "injiwallet-" + System.currentTimeMillis();
Map<String, String> options = new HashMap<>();
options.put("key", InjiWalletConfigManager.getproperty("browserstack.accesskey"));
options.put("forcelocal", "true");
options.put("localIdentifier", localIdentifier);
bsLocal.start(options);
if (!bsLocal.isRunning()) {
throw new RuntimeException("BrowserStack Local tunnel did not start!");
}
started = true;
LOGGER.info("BrowserStack Local started successfully.");
} catch (Exception e) {
throw new RuntimeException("Failed to start BrowserStack Local", e);
}
}
}
public static synchronized void stopLocal() {
if (started && bsLocal != null && bsLocal.isRunning()) {
try {
bsLocal.stop();
started = false;
LOGGER.info("BrowserStack Local stopped.");
} catch (Exception e) {
throw new RuntimeException("Failed to stop BrowserStack Local", e);
}
}
}
public static String getLocalIdentifier() {
return localIdentifier;
}
}

View File

@@ -19,10 +19,10 @@ public class InjiWalletUtil extends AdminTestUtil {
private static final Logger logger = Logger.getLogger(InjiWalletUtil.class);
private static final AdminTestUtil adminTestUtil = new AdminTestUtil();
private static final Faker faker = new Faker();
private static final String fullNameForSunBirdR = generateFullNameForSunBirdR();
// private static final String dobForSunBirdR = generateDobForSunBirdR();
// private static final String fullNameForSunBirdR = generateFullNameForSunBirdR();
// private static final String dobForSunBirdR = generateDobForSunBirdR();
private static final String dobForSunBirdR = String.valueOf(LocalDate.now());
private static final String policyNumberForSunBirdR = generateRandomNumberString(9);
// private static final String policyNumberForSunBirdR = generateRandomNumberString(9);
public static void setLogLevel() {
if (InjiWalletConfigManager.IsDebugEnabled())
@@ -57,11 +57,13 @@ public class InjiWalletUtil extends AdminTestUtil {
}
if (jsonString.contains("$POLICYNUMBERFORSUNBIRDRC$")) {
String policyNumberForSunBirdR = generateRandomNumberString(9);
jsonString = replaceKeywordWithValue(jsonString, "$POLICYNUMBERFORSUNBIRDRC$", policyNumberForSunBirdR);
adminTestUtil.writeAutoGeneratedId(testCaseName, "POLICY", policyNumberForSunBirdR);
}
if (jsonString.contains("$FULLNAMEFORSUNBIRDRC$")) {
String fullNameForSunBirdR = generateFullNameForSunBirdR();
jsonString = replaceKeywordWithValue(jsonString, "$FULLNAMEFORSUNBIRDRC$", fullNameForSunBirdR);
adminTestUtil.writeAutoGeneratedId(testCaseName, "NAME", fullNameForSunBirdR);
}

View File

@@ -19,7 +19,7 @@ CreatePolicySunBirdR:
"benefits": [{"benefits": "Critical Surgery"}, {"benefits": "Full body checkup"}],
"gender": "Male",
"mobile": "0123456789",
"email": "abhishek@gmail.com"
"email": "automation@gmail.com"
}'
output: '{
"status": "SUCCESSFUL"
@@ -28,7 +28,7 @@ CreatePolicySunBirdR:
InjiWallet_SunBirdR_CreatePolicy_NOAUTH_Valid_Smoke_POLICY2_Sid:
endPoint: $SUNBIRDBASEURL$/api/v1/Insurance
description: Creating new sunbird policy with valid parameters
uniqueIdentifier: TC_InjiWallet_CreatePolicySunBirdR_01
uniqueIdentifier: TC_InjiWallet_CreatePolicySunBirdR_02
role: resident
restMethod: post
checkErrorsOnlyInResponse: true
@@ -45,7 +45,7 @@ CreatePolicySunBirdR:
"benefits": [{"benefits": "Critical Surgery"}, {"benefits": "Full body checkup"}],
"gender": "Male",
"mobile": "0123456789",
"email": "abhishek@gmail.com"
"email": "automation@gmail.com"
}'
output: '{
"status": "SUCCESSFUL"
@@ -54,7 +54,7 @@ CreatePolicySunBirdR:
InjiWallet_SunBirdR_CreatePolicy_NOAUTH_Valid_Smoke_POLICY3_Sid:
endPoint: $SUNBIRDBASEURL$/api/v1/Insurance
description: Creating new sunbird policy with valid parameters
uniqueIdentifier: TC_InjiWallet_CreatePolicySunBirdR_01
uniqueIdentifier: TC_InjiWallet_CreatePolicySunBirdR_03
role: resident
restMethod: post
checkErrorsOnlyInResponse: true
@@ -71,7 +71,7 @@ CreatePolicySunBirdR:
"benefits": [{"benefits": "Critical Surgery"}, {"benefits": "Full body checkup"}],
"gender": "Male",
"mobile": "0123456789",
"email": "abhishek@gmail.com"
"email": "automation@gmail.com"
}'
output: '{
"status": "SUCCESSFUL"

View File

@@ -19,7 +19,7 @@ DeletePolicySunBirdR:
InjiWallet_SunBirdR_DeletePolicy_NOAUTH_Valid_Smoke_POLICY2:
endPoint: $SUNBIRDBASEURL$/api/v1/Insurance/{insuranceid}
description: Deleting Sunbird policy with valid parameters
uniqueIdentifier: TC_InjiWallet_DeletePolicySunBirdR_01
uniqueIdentifier: TC_InjiWallet_DeletePolicySunBirdR_02
role: resident
restMethod: delete
checkErrorsOnlyInResponse: true
@@ -36,7 +36,7 @@ DeletePolicySunBirdR:
InjiWallet_SunBirdR_DeletePolicy_NOAUTH_Valid_Smoke_POLICY3:
endPoint: $SUNBIRDBASEURL$/api/v1/Insurance/{insuranceid}
description: Deleting Sunbird policy with valid parameters
uniqueIdentifier: TC_InjiWallet_DeletePolicySunBirdR_01
uniqueIdentifier: TC_InjiWallet_DeletePolicySunBirdR_03
role: resident
restMethod: delete
checkErrorsOnlyInResponse: true

View File

@@ -181,7 +181,7 @@
<!-- need to be tested-->
</methods>
</class>
<class name="inji.testcases.androidTestCases.VcDownloadAndVerifyUsingLandRegistryTest">
<!--<class name="inji.testcases.androidTestCases.VcDownloadAndVerifyUsingLandRegistryTest">
<methods>
<include name="downloadAndVerifyVcUsingUinViaLand"/>
<include name="downloadAndVerifyVcUsingUinViaLandStatementCredential"/>
@@ -190,7 +190,7 @@
<include name="downloadAndVerifyVcUsingUinViaLandStatementVCDM1"/>
</methods>
</class>
<!-- <class name="inji.testcases.androidTestCases.CredentialRegistryTest">
<class name="inji.testcases.androidTestCases.CredentialRegistryTest">
<methods>
<include name="downloadAndVerifyVcInNewEnv"/>
<include name="cancelChangeEnvAndVerify"/>