From 9abda262444bb9bf3f5a9a702170a6f7eb2eff6d Mon Sep 17 00:00:00 2001 From: Richard Pappalardo Date: Thu, 7 Nov 2019 11:04:04 -0800 Subject: [PATCH] Isolate 1 UI test (WIP) --- .../androidTest/flank-x86-start-test.yml | 57 +++++++++++++++++++ automation/taskcluster/androidTest/ui-test.sh | 4 ++ taskcluster/ci/test/kind.yml | 2 +- 3 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 automation/taskcluster/androidTest/flank-x86-start-test.yml diff --git a/automation/taskcluster/androidTest/flank-x86-start-test.yml b/automation/taskcluster/androidTest/flank-x86-start-test.yml new file mode 100644 index 000000000..fd672ce98 --- /dev/null +++ b/automation/taskcluster/androidTest/flank-x86-start-test.yml @@ -0,0 +1,57 @@ +# gcloud args match the official gcloud cli +# https://cloud.google.com/sdk/gcloud/reference/firebase/test/android/run +gcloud: + results-bucket: fenix_test_artifacts + record-video: true + + # The maximum possible testing time is 30m on physical devices and 60m on virtual devices. + timeout: 30m + # will start test then close socket. no reports will be generated. + # to retrieve results later, use the "refresh" command + # reports will be generated from /results/matrix_ids.json + #async: true + # will start test then leave socket open. reports will be published + # to /results + # see: https://github.com/TestArmada/flank/issues/339 + async: false + + # results-history-name + # by default, set to app name + # declare results-history-name to create a separate dropdown menu in Firebase + # see: https://github.com/TestArmada/flank/issues/341 + #results-history-name: tmp_parallel + + # The number of times a TestExecution should be re-attempted if one or more\nof its test cases fail for any reason. + # The maximum number of reruns allowed is 10. Default is 0, which implies no reruns. + num-flaky-test-attempts: 3 + + # test and app are the only required args + app: /app/path + test: /test/path + + auto-google-login: true + use-orchestrator: true + environment-variables: + clearPackageData: true + directories-to-pull: + - /sdcard/screenshots + performance-metrics: true + + test-targets: + - class org.mozilla.fenix.ui.NavigationToolbarTest#visitURLTest + + device: + - model: Nexus6 + version: 25 + - model: Pixel2 + version: 28 + +flank: + project: GOOGLE_PROJECT + # test shards - the amount of groups to split the test suite into + # set to -1 to use one shard per test. + max-test-shards: -1 + # repeat tests - the amount of times to run the tests. + # 1 runs the tests once. 10 runs all the tests 10x + repeat-tests: 1 + diff --git a/automation/taskcluster/androidTest/ui-test.sh b/automation/taskcluster/androidTest/ui-test.sh index 05435ad5a..bc5ab9a4f 100755 --- a/automation/taskcluster/androidTest/ui-test.sh +++ b/automation/taskcluster/androidTest/ui-test.sh @@ -69,6 +69,10 @@ if [[ "${device_type}" =~ ^(arm64-v8a|armeabi-v7a|x86_64|x86)$ ]]; then APK_APP="${PATH_APK}/app-geckoNightly-${device_type}-debug.apk" flank_template="${PATH_TEST}/flank-${device_type}.yml" echo "device_type: ${device_type}" +elif [[ "${device_type}" == *"start-test"* ]]; then + APK_APP="${PATH_APK}/app-geckoNightly-x86-debug.apk" + flank_template="${PATH_TEST}/flank-x86-start-test.yml" + echo "device_type: ${device_type}" else echo "NOT FOUND" exitcode=1 diff --git a/taskcluster/ci/test/kind.yml b/taskcluster/ci/test/kind.yml index 7ae17da14..cd75c309e 100644 --- a/taskcluster/ci/test/kind.yml +++ b/taskcluster/ci/test/kind.yml @@ -51,7 +51,7 @@ jobs: # TODO Generate APKs in a build task instead gradlew: ['clean', 'assembleDebug', 'assembleAndroidTest'] post-gradlew: - - ['automation/taskcluster/androidTest/ui-test.sh', 'x86', '-1'] + - ['automation/taskcluster/androidTest/ui-test.sh', 'x86-start-test', '-1'] secrets: - name: project/mobile/fenix/firebase key: firebaseToken