Всем доброго времени суток!
Недавно на работе столкнулся с одной проблемой. Работаю в игровой индустрии и недавно начальство задумалось об автоматизации смоук-тестирования(запуск билдов и выполнение простых действий на проверку того что они не падают при запуске или при выполнении простейших действий). Мне поручили разобраться таким продуктом как Testdroid recorder(http://testdroid.com...roid-recorder#0). Выбор был на нем остановлен так как данная компания позволяет запускать тесты на своих реальных устройствах, что было бы весьма кстати для нас. На данный момент установка на устройства проводится вручную. В качестве проверке был выбран один из наших продуктов - Game Navigator(https://play.google.com/store/apps/details?id=com.g5e.xpromoapp). Итак закончим пролог и к делу.
Так вот сел я разбираться с этим чудо-плагином. В принципе там ничего сложного, запускаешь, выполняешь действия с устройством, а тест записывается в готовом виде. Но сразу возникли проблемы - при воспроизведении тестов нажимались совершенно другие кнопки. В общем полез я в код теста начал выяснять причины. Причина была в том что рекордер берет ид-шники кнопок странным образом, и если запускать по одному ид, то результат будет печальным.
Так же не работала проверка текста(ни хтмл, ни обычная. Приложение вообще представляет собой веб-страницу по факту), а также когда я прописывал определенные классы элементов в команду clickOnHtmlElement тест падал, так как не мог найти кнопки с этими классами(классы я взял из кода приложения). С некоторыми классами работало, но с большинством нужных мне - нет(на скрине Example2 я выделил области, тап на которые мне удалось воспроизвести используя класс элементов этих областей, но нажатия на кнопки Play Now и Learn More, используя их класс, так и не удалось сделать).
По факту удалось воспроизвести только тап на одну область. Как я уже говорил - не работала проверка текста(тест падал на проверке одного слова на странице, которое там встречалось раз 10) + полностью не работали кнопки нижнего меню - Home, Twitter, Facebook, Support(скрин прикрепил).
"Сработало" только 2 теста - clickOnText("Twitter") и clickOnView("Facebook"), и именно "сработало" так как тест был пройден, но никаких действий при запуске теста на устройстве я не видел(должен был произойти переход на наши страницы ФБ и твиттера).
Кто-нибудь сталкивался с чем-то подобным? Может кто подскажет почему тест "не видит" большую часть кнопок в приложении и вообще не видит текста? После исследования инета понял что проблема скорее Роботиума, и люди боролись в основном с использованием clickOnView() команды. Но проблема в том что я не знаю какие у меня View на этих кнопках. UI Automator не показал мне ровным счетом ничего. Да и проблема с поиском текста остается....