Тут уже все это неоднократно спрашивали, и я буду 101-м человеком задающим этот вопрос. но все-таки…
Встал вопрос о тестировании мобильного приложения, которое делается под Android и под iOS
Фишка в том, что WEB-версию этого самого приложения я уже активно авто-тестирую в течении года с помощью Maven+Selenium+Java+Thucydides
Про appium читала и даже смотрела видео, но пока как-то сомневаюсь в том, чтобы его использовать (как минимум потому, что на последней “авто-конфетке” докладчик честно рассказал об общеизвестном баге при запуске, который девелоперы так и не удосужились исправить в течении многих месяцев)
Склоняюсь больше к отдельным инструментам для Android и для iOS (тем более, что тесты для последнего будут запускаться вообще на отдельной маковской машине).
Вопрос: с моим Selenium+Java-бэкграундом в какую сторону лучше всего смотреть? И вообще это как-то влияет на выбор? Или надо будет все-равно все с нуля по сути своей начинать?
К сожалению, пока-что не тестировал iOS, а вот по андроиду советую Robotium, UIAutomator, также люди советуют Calabash. Больше всего мне понравился UIAutomator (простой API), для тестирования не требуется обязательного наличии сорцов приложения, можно тестировать одновременно несколько приложений (взаимодействие). Robotium тоже нормальный, но ограниченный по сравнению с тем же UIAutomator. Для ознакомления с UIAutomator посоветую три ссылки и уже сегодня или завтра, в крайнем случае в понедельник ты будешь писать тесты
Тем более у тебя опыт тестирования вэба, проблем не будет особых. А я вот всячески избегаю работы с вэбом, но судя по тенденциям вопросов и рынка нужно заниматься самообразованием в автоматизации тестирования вэба.
Согласен, API проще некуда, но лично я пока не использовал. А можно ли тестировать несколько приложений? Можно ли тестировать приложение, если нет исходников или приложение предустановленное?
Спасибо за советы[quote=“dzhariy, post:4, topic:4326”]
Ничего не скажу, и просто оставлю это тут для обсуждения:
Espresso a fun little Android UI test API
[/quote]
Тоже почитала и даже видео посмотрела на официальной странице, но, возможно, для меня это слишком простой инструмент. Потому что мне надо не просто кликнуть и получить подтверждение, что на клик что-то показалось, но и сделать выбор по определенному критерию из выпадающего списка, например. Или сохранить значение на одной странице и убедится, что это значение не изменилось при переходе на следующий экран.
То, что я поняла из видео-презентации создатели этого инструмента сознательно максимально все упростили, а в моем случае это скорее минус, чем плюс… Поправьте меня, если я не права
Писать вы можете, где угодно, но проверять-то нужно будет на Mac OS. Если Вы хотите писать и под Android, и под iOS, то лучше уже все делать на Mac OS. Тем более, Android SDK есть под MacOS.
Если есть опыт работы с Selenium, то будет проще работать с Appium, Selendroid, ios-driver. Они поддерживают WebDriver API. Я бы рекомендовал первый инструмент — Appium.
Если я правильно поняла, то Appium лучше сразу устанавливать на Mac и уже на мак добавлять андроид для кросс-платформенного тестирования? Я пыталась установить Appium на машину под Windows7, но как-то у меня не заработало ничего
Да, по ней. На чем застопорилось я уже не помню, но когда начала гуглить проблему поняла, что appium лучше сразу ставить на мак и поэтому решила не тратить время (которого было сильно в обрез) на Windows.
прошу прощения за археологию, но других тем по еспрессо не нашел
я тоже так думал, оказалось наоборот)
несколько недель ковыряю еспрессо на реальном проекте. Штука сложная но мощная.
Основной плюс - скорость. Вейтам и слипам - бой, это же и основной гиморой т.к. нужны танцы с бубнами чтобы регистрировать ресурсы для синхронизации потоков приложения и тестов.
на презентациях всегда так выглядит, просто и гладко. Для всего этого используется hamcrest matcher библиотека которая способна вычленить практически любой елемент из UI приложения, по любому аттриьуту в т.ч. из AdapterView https://code.google.com/p/hamcrest/wiki/Tutorial
никаких сахарных тулзей, распознавалок и утилит. код в скриптах только ручками, только хардкор.
лично мне еспрессо кажется сложным, но если доведут до ума - перспективным.
если есть люди которые так же разбираются с еспрессо и имеют много вопросов и непоняток - пишите в скайп november1306.