Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Jenkins + Gradle + Robotium как все правильно сделать


(Вова Герасименко) #1

Здравствуйте, как подружить их всех ?))
У меня есть проект написанный на Android Studio в нем есть тесты которые написаны на Robotium, Может кто то доходчиво объяснить как правильно все это сделать ?? А то я что то в инете нахожу и ничего мне не подходить ((


#2

А что именно не подошло, и что именно нащлось в инете? Рассказывай, Вова :slight_smile:


(Вова Герасименко) #3

Итак :slight_smile: У меня есть проект написанный на Android Studio на Gradle. А этом проекте есть пару тестов которые написаны на Robotium. Сегодня у меня получилось сделать так что бы Jenkins скомпилировал мой android проект. Что мне сделать дальше ?? Где добавить какие нибудь команды или что то еще что бы после удачного билда проекта запускались тесты. Нужно добавить другой job который будет вытягивать успешный билд из первого job и запускать тесты или же можно сделать все в одном job. ?? Не знаю что делать дальше)


#4

В двух словах, нужно добавить шаг, который запустит эмулятор в фоновом процессе, а затем шаг, который запустит тесты (./gradlew connectedAndroidTest). Вроде все. По реальному девайсу не подскажу, не сталкивался. В какой джобе это делать? Можно в той же, что собирает (build) приложение, если используется white-box подход. Если для тестирования используется уже собраный .apk и black-box подход, то можно копировать это собранное приложение в соседний джоб и там прогонять тесты.


(Вова Герасименко) #5

Не получается запусnить эмулятор у меня… ( ставлю галочку на Run an Android emulator during build\Run existing emulator сюда ввожу название Nexus_One_API_19 (он у меня создан в AVD )


#6

Это android plugin? Я его снес, и просто добавил шаг сборки “Выполнить команду”, в котором указал команду на запуск Genymotion. Для андроид эмулятора вроде будет emulator -avd fooemulator -avd Nexus_One_API_19, где Nexus_One_API_19 – имя устройства из AVD.


(Вова Герасименко) #7

если я хочу запустить через андроид плагин то у меня в консоле потом такая ошибка (SDL init failure, reason is: No displays available), а какая команда для запуска genymotion avd ??


#8

Я не пользовался андроид плагином, не подскажу. А без него взлетело?

Genymotion можно запустить с помощью команды start start C:“Program Files”\Genymobile\Genymotion\player --vm-name “tour_device_name”


(Вова Герасименко) #9

да что то оно ничего не делаеться , может вы можете зайти на пару мин через teamviewer ??) если что добавьте меня в skype login - mrzet1