Как стать автором
Обновить

Тестовая ферма из Android-устройств: как собрать, отладить и не взорвать офис

Время на прочтение11 мин
Количество просмотров12K
Всего голосов 29: ↑29 и ↓0+29
Комментарии14

Комментарии 14

Тема жаропрочного короба не раскрыта. Вы в него прятали работающие тестовые смартфоны? Он с принудительным охлаждением?

Если на все ответы "да", то непонятно - с чего вспучило один аппарат. Может, брак попался?

На данный момент в качестве "жаропрочного короба" выступает бывший системый блок от старого PC, из которого изъяли все внутренности. Да, в нем просто находится хаб с работающими телефонами. Охлаждение в нем пассивное, но если кто-то соберется делать что-то посерьезнее, рекомендую присмотреться к более интересным вариантам.

Почему вспучило - сказать конкретно сложно, может и брак. Тем не менее, прецедент был довольно тревожный.

Охлаждение в нем пассивное

Не воспринимайте, плз, как менторство, но вы довольно смелые люди :). Упрятать десяток работающих в загруженном режиме смартов в коробку с чисто символическими дырочками для вентиляции... Перегрева процессора и тротлинга, думаю, не дождемся, но постоянное нахождение лития при высокой температуре - такое себе удовольствие. По паспорту у этих батарей максималка +60С, но 10 смартфонов в закрытом коробе могут и посильнее нагреться.

выступает бывший системый блок от старого PC

Там же есть штатные посадочные места? Поставьте хотя бы один вытяжной вентилятор, а то мы за вас переживаем :)

Спасибо :) Данный "короб" - временное решение.

Временное, говорите? Ну вот держите фото постоянных. Шэнчжэнь, 2018

Мне нравится. У нас похоже:

  • 12 iPhone

  • 12 Android (Nokia где чистый Андроид)

  • 1 macMini (недавно добавили еще один)

  • Java + Appium + TestNG + Maven

  • 1500 тестов за 2,5 часа

Самое интересное - даже один макМини легко держит это все хозяйство. А мы еще видео всех тестов делаем 24 потока...

Да, снимать отдельно видео всего процесса у нас стоит в планах, т.к. не всегда можно воссоздать "картину преступления" по последнему скриншоту и логам. Кстати, а каким образом вы все это подружили с iOS?

Appium поддержал видео не так давно(год или чуть больше).

Для Android нативными ADB командами (хотя мы так и не перешли еще. используем те же команды сами).

Для iOS написал Appium свой видео стрим делают. Мы забираем фактически его. Переменный битрейт делает iOS видео с маленьким размером. В Android я быстро пережимаю ffmpeg командами.

Ну а вообще Appium удобная штука. И именно им и поддержали все.

Slack, TestRail report это уже просто на Java.

ЗЫ я тут если есть вопросы -> https://discuss.appium.io/u/Aleksei на официальном их форуме или тут тоже.

Когда я говорил про видео, я имел в виду реальную стороннюю камеру, которая бы записывала работу всей фермы :) С самих телефонов не хочется снимать видео, т.к это потенциально может негативно влиять на процесс тестирования.

В свое время смотрели на Appium, но так и не придумали, как его прикрутить к Unity приложению, поэтому "нагородили" свое.

Интересно как вы tap по id сделали.

adb exec-out uiautomator + adb shell input tap ?

Мы так пробовали, но не стали. Я в статье описал способ: мы эмулируем ввод на уровне Activity. Т.е сами тестовые скрипты пробрасывают через C# в Activity события ввода. Но для приложения все происходит так, как если бы реально пользователь тапал и свайпил по экрану.

Блин сорри. Вы это написали....

Я как-то пропустил.

Не пробовали подключаться к гугловым фермам?

Мы поизучали немного фермы на Amazon. Как-то нас и цены напугали, и какой-то не сразу очевидный API....больше смотреть не стали. Но, кто знает, если понадобится более 50 девайсов...

Зарегистрируйтесь на Хабре, чтобы оставить комментарий