Параметр командной строки --num-flaky-test-attempts
из gcloud firebase test android run
, по-видимому, перезапускает все тесты, а не только неудачные тесты.
Я запустил набор тестов, используя --num-flaky-test-attempts 10
, и здесь отметки времени из журналов для одного теста в наборе:
04-27 03:41:51.225 passed
04-27 03:41:50.519 passed
04-27 03:41:43.533 failed
04-27 03:41:48.625 failed
04-27 03:42:13.886 failed
04-27 03:41:33.749 failed
04-27 03:41:43.694 failed
04-27 03:41:42.101 failed
04-27 03:41:20.310 passed
04-27 03:40:17.819 passed
04-27 03:33:14.154 failed
Кажется, каждый раз выполнялся весь набор тестов. В некоторых случаях упомянутый выше тест прошел, а в некоторых - не прошел. Он проходил и терпел неудачу несколько раз, поэтому очевидно, что он перезапускает тест независимо от того, прошел он или нет.
Я полагаю, что было всего 11 тестов, потому что я указал --num-flaky-test-attempts 10
, что означает, что он попытался запустить пакет один раз, а после сбоя он запустился еще 10 раз, в общей сложности 11.
Вот полная команда на случай, если она будет полезна кому-либо:
gcloud firebase test android run \
--project locuslabs-android-sdk \
--app app/build/outputs/apk/debug/app-debug.apk \
--test app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk \
--device model=walleye,version=28,locale=en_US,orientation=portrait \
--test-targets "class com.locuslabs.android.sdk.TestUITest" \
--use-orchestrator \
--num-flaky-test-attempts 10 \
--timeout 30m \
--environment-variables numShards=10,shardIndex=2 \
--verbosity debug