只在某些裝置上執行測試 (connectedAndroidTest)

connectedAndoidTest 預設會將所有 test 執行在所有連接的 device/emulator 上,若只想執行在某些 device/emulator 上要怎麼做?

就像 #66129 所描述的情節一樣,這樣的需求通常會發生在 build server 上,因為同時連接有許多不同用途的 device/emulator。但這件事有點弔詭,因為相關的討論並不多:

根據 #160929 的說法,可以透過 ANDROID_SERIAL 環境變數來指定一或多個 device/emulator (用逗號隔開),在 Android Plugin for Gradle 2.1.2 上試過是有作用的。例如:

1
$ ANDROID_SERIAL=emulator-5554,ABC123DEF ./gradlew connectedAndroidTest

只在 emulator-5554 (emulator) 與 ABC123DEF (device) 上執行測試。