summaryrefslogtreecommitdiff
path: root/android
diff options
context:
space:
mode:
authorAntonio Zugaldia <antonio@silicalabs.com>2015-09-14 17:03:46 -0400
committerAntonio Zugaldia <antonio@silicalabs.com>2015-09-14 17:03:46 -0400
commite95d0e030315a35aa0ec6d42597c1be99adf3307 (patch)
treef0251f467b926f10aae1fde5ed1cbe108a4b702b /android
parent67586c13fc5672aff4665cf1f66eab97deb9fae0 (diff)
downloadqtlocation-mapboxgl-e95d0e030315a35aa0ec6d42597c1be99adf3307.tar.gz
tests documentation
Diffstat (limited to 'android')
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/README.md41
1 files changed, 40 insertions, 1 deletions
diff --git a/android/java/MapboxGLAndroidSDKTestApp/README.md b/android/java/MapboxGLAndroidSDKTestApp/README.md
index 007a8b1d42..87ea2eb13a 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/README.md
+++ b/android/java/MapboxGLAndroidSDKTestApp/README.md
@@ -2,4 +2,43 @@
## Testing
-TBD.
+### Run Espresso tests on a device
+
+This test project comes with all the required Android Testing Support Library dependencies
+in the Gradle file. Tests are under the `app/src/androidTest` folder.
+
+Note that before running your tests, you might want to turn off animations on your test device.
+It's a known issue that leaving system animations turned on in a test device
+(window animation scale, transition animation scale, animator duration scale)
+might cause unexpected results, or may lead tests to fail.
+
+To create a new run configuration:
+* Click on Run -> Edit Configurations...
+* Click on the plus sign and then on "Android Tests"
+* Give a name to the configuration, e.g. `TestAppTests`
+* Choose the `MapboxGLAndroidSDKTestApp` module
+* Choose `android.support.test.runner.AndroidJUnitRunner` as the instrumentation runner
+* Click OK to save the new configuration
+
+You can now run this configuration from the main toolbar dropdown menu.
+
+# Run Espresso tests on AWS Device Farm
+
+On a terminal, within `mapbox-gl-native/android/java`,
+run the tests (`cC` stands for `connectedCheck`):
+
+```
+$ ./gradlew cC -p MapboxGLAndroidSDKTestApp
+```
+
+Then:
+* Go to your AWS Console and choose Device Farm.
+* Create a new project, e.g. `MapboxGLAndroidSDKTestApp`
+* On step 1, upload the APK in `mapbox-gl-native/android/java/MapboxGLAndroidSDKTestApp/build/outputs/apk/MapboxGLAndroidSDKTestApp-debug-unaligned.apk`
+* On step 2, choose Instrumentation, test filter is `com.mapbox.mapboxgl.testapp.MainActivityTest` and upload the APK in `mapbox-gl-native/android/java/MapboxGLAndroidSDKTestApp/build/outputs/apk/MapboxGLAndroidSDKTestApp-debug-androidTest-unaligned.apk`
+* On step 3, choose a device pool. E.g. Top Devices
+* On step 4, customize your device state (if needed)
+* Finally, confirm the configuration and run the tests.
+
+If you have no tests for your app, or want to test some random user behaviour,
+you can just choose "Built-in: Fuzz" in step 2.