Set of UI tests to check SDKs functionality and possible regressions.
Currently works only with aerogear-android-sdk.
For local runs:
- properly installed Android SDK with an Android Emulator
- Appium server
Start your local Appium server and launch the Android emulator. Then execute:
$ ./gradlew test
$ APPIUM_SERVER='yourserverhostname:4723' ./gradlew test
-
Create new test class in the
org.aerogear.sdkE2ETests.tests
extendingBaseTest
. -
Create page objects for the flow of the test case
- write level 1 page object (like one in
AuthenticatedScreen
- interface that contains all UI elements that are needed for the test as properties of the interface - create level 2 page object for Android (like one in
AutenticatedAndroidScreen
)) implementing page 1 interface andAndroidScreen
class - use Appium Desktop to scan for elements used on the each "screen" in the flow and override UI element properties in the level 2 pageobject, fill in how they will be obtained on the screen using delegations like
by id()
,by accessibilityId()
, etc. - implement test logic as methods in the page object (platform indepenent in the interface)
- add level 2 page object into the
screens
section ininit.kt
- write level 1 page object (like one in
More detailed approach for writing tests using the Akow library is in its documentation.