Я экспериментирую с тестированием на Android, и я получаю довольно странные результаты:
+ adb -s emulator-5580 shell am instrument -e numShards 2 -e shardIndex 0 -e class com.package.etc.automation.Tests.SanityTest.SanityTest -w com.package.etc.test/android.support.test.runner.AndroidJUnitRunner
com.package.etc.automation.Tests.SanityTest.SanityTest:..........
Time: 306.578
OK (10 tests)
+ adb -s emulator-5582 shell am instrument -e numShards 2 -e shardIndex 1 -e class com.package.etc.automation.Tests.SanityTest.SanityTest -w com.package.etc.test/android.support.test.runner.AndroidJUnitRunner
com.package.etc.automation.Tests.SanityTest.SanityTest:......................
Time: 645.723
OK (22 tests)
Как вы можете видеть, adb разделил тесты на две неравномерные группы. Второй имеет в два раза больше тестов, чем первый, и выполняет в два раза больше. Не лучший parallelism, если вы спросите меня.
Есть ли возможность контролировать распределение тестов или, по крайней мере, заставить adb равномерно распределять тесты?