Java project for running mobile tests on iOS and Android with Appium
This projects is a demo testing framework for validating Android and iOS apps. It uses Cucumber and TestNG for structuring and executing tests. Also, it’s configured with Allure reporting framework.
The key feature of this demo is that it can use device, emulator or cloud provider to run tests. The following cloud providers are supported:
TODO: AWS Device Farm
See details for configuring providers below
profiles
node of pom.xml
For iOS device you also need to specify
<profile>
<id>$DEVICE_PROFILE_NAME</id>
<properties>
<provider.name>local</provider.name>
<device.type>device|emulator</device.type>
<device.platform.name>android|ios</device.platform.name>
<device.platform.version>$ANDROID_VERSION</device.platform.version>
<device.name>$DEVICE_NAME</device.name>
</properties>
</profile>
device.udid
mvn clean test -P$DEVICE_PROFILE_NAME -P$SUITE_PROFILE_NAME
You can generate a report using one of the following command:
mvn allure:serve
Report will be generated into temp folder. Web server with results will start.
mvn allure:report
Report will be generated tо directory: target/site/allure-maven/index.html
$USERNAME
, $ACCESS_KEY
$APP
env variablepom.xml
where
<profile>
<id>$PROVIDER-$PLATFORM-$DEVICE_TYPE</id>
<properties>
<provider.name>$PROVIDER</provider.name>
<device.type>$DEVICE_TYPE</device.type>
<device.platform.name>$PLATFORM</device.platform.name>
<device.platform.version>$VERSION</device.platform.version>
<device.name>$DEVICE_NAME</device.name>
</properties>
</profile>
USERNAME=... ACCESS_KEY=... APP=... mvn clean test -P$DEVICE_PROVILE -Psuite-full