Настроив серию тестов, я выбрал Appium Python, так как увидел, что он поддерживает как AWS Device Farm, так и Microsoft App Center.
Я провожу тестовый запуск одного устройства на AWS и вижу, что каждый модульный тест занимает 1:30 минут. Поскольку у меня есть 26 тестов, это будет 40+ минут на тестовый запуск для каждого устройства.
Для сравнения: я могу запустить тот же тест локально (i7, 16 ГБ) примерно за 9 минут, что считаю приемлемым.
Сначала я подумал, что AWS игнорирует мои желаемые возможности и устанавливает APK при каждом тесте, однако в журнале я вижу, что запросы к серверу Appium выполняются бесконечно.
2018-01-26 03:13:29:605 - [HTTP] <-- GET /wd/hub/status 200 40 ms - 83
2018-01-26 03:14:05:721 - [HTTP] <-- POST /wd/hub/session 200 35503 ms - 1418
2018-01-26 03:14:05:845 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/timeouts/implicit_wait 200 59 ms - 76
2018-01-26 03:14:18:612 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/appium/app/launch 200 12763 ms - 76
2018-01-26 03:14:22:786 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element 200 4162 ms - 87
2018-01-26 03:14:23:352 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element/1/click 200 560 ms - 76
2018-01-26 03:14:24:006 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element 200 650 ms - 87
2018-01-26 03:14:24:264 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element/2/click 200 234 ms - 76
2018-01-26 03:14:25:205 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element 200 924 ms - 87
2018-01-26 03:14:25:329 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element 200 119 ms - 87
2018-01-26 03:14:25:444 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/element 200 111 ms - 87
2018-01-26 03:14:35:523 - [HTTP] <-- GET /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/screenshot 200 10062 ms - 5261738
2018-01-26 03:14:36:904 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/touch/perform 200 796 ms - 76
2018-01-26 03:14:47:256 - [HTTP] <-- GET /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/screenshot 200 10319 ms - 5261770
2018-01-26 03:14:49:199 - [HTTP] <-- POST /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5/appium/app/close 200 1139 ms - 76
2018-01-26 03:14:52:874 - [HTTP] <-- DELETE /wd/hub/session/7243baaa-affd-4230-95cd-6f29a41ff6f5 200 3546 ms - 76
Здесь вы можете увидеть:
- 35 секунд на создание сеанса
- 13 секунд на запуск
- 10 секунд на снимок экрана. (Всего 20 секунд)
Это 60 секунд из 90 секунд в задачах вне теста.
Это ожидаемая производительность? Я использую Samsung S8, если это имеет значение.