Ускорение тестов Amazon Device Farm Appium Python

Настроив серию тестов, я выбрал 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, если это имеет значение.


person sfratini    schedule 26.01.2018    source источник
comment
@NikofTime Я мог видеть, как вы работаете в AWS Device Lab. Не могли бы вы мне помочь?   -  person sfratini    schedule 26.01.2018


Ответы (1)


Это ожидаемое поведение для самого Appium. Однако Device Farm выполняет настройку и разборку Appium для каждого теста. Это может быть основной причиной длительного тестирования.

person jzthinkgeek    schedule 01.02.2018