Calabash Android - полное руководство

Я новичок в Calabash - Android. Я настроил среду. Я был бы очень признателен, если бы эксперт в этой области, который тщательно разбирается во всей этой концепции, мог бы помочь мне в этом. Я нашел много IDE, таких как Eclipse, IntelliJ и редакторы, такие как Sublime, TextWrangler и т. Д. Я не понимаю, какой из них выбрать для идеального разработчика Android. Я знаком с Руби, но не эксперт. Должен ли я улучшить свои знания по Ruby? Кроме того, если кто-то может помочь мне, предоставив некоторые URL-адреса, я был бы очень признателен вам. Я нашел много вопросов о самом Stackru, но я не смог найти ничего, что было бы полным руководством для такого новичка, как я. Я надеюсь, что кто-нибудь может мне помочь

1 ответ

Решение

РУКОВОДСТВО ПО КАЛАБАШУ-АНДРОИДУ

Вам не нужно быть экспертом по Ruby для написания функциональных тестовых примеров или работы с QA для добавления новых тестовых сценариев. Разработчик Android может комфортно работать, закажите Calabash-Android на github ( https://github.com/calabash/calabash-android) и добавьте его в свою IDE. Постарайтесь понять, как определения шагов, написанные в рамках, вы можете написать определение шагов Ruby для вашего проекта так же, как это написано в рамках. Кроме того, вы можете использовать постоянные шаги (но не рекомендуется). Я объясняю здесь шаги, которые я выполнил и исследовал для реализации функциональных тестов с использованием Calabash - Android.

Предполагаемое предварительное условие: у вас есть настроенная среда Calabash, Android SDK, Java, Ruby и т. Д. (Все, что требуется для запуска приложения Android и Calabash). Я использую Genymotion, так как я обнаружил, что это самый быстрый эмулятор. Вам нужно выбрать одну IDE для Ruby & Cucumber. Поскольку я использую Android Studio, я предпочитаю использовать IntelliJ. Итак, я использую RubyMine

Будьте удобны с Calabash Console и убедитесь, что все работает нормально, и сначала попробуйте на консоли.

Консоль Calabash
Убедитесь, что ваш эмулятор Genymotion работает

  • Чтобы легко ссылаться на apk, экспортируйте его (в Mac или Ubuntu) export APK = your_application.apk

  • Resign apk calabash-android resign $APK (убедитесь, что вы используете тот же сертификат (подпись) keystone для отставки)

  • Открыть консоль Calabash Calabash-android-консоль $APK

  • Запустить тестовый сервер Не найдено тестового сервера для этой комбинации приложения и версии calabash. Воссоздание тестового сервера. Завершено подписание тестового сервера. Перемещено в test_servers/24433decbe6bdd96b13b9b58258231a8_0.4.20.apk irb(основной):001:0> start_test_server_in_background

Для возврата к родительскому методу IRB (консоль Calabash): irb(main):012:1> end Ссылочный URL: http://www.ruby-doc.org/stdlib-2.0/libdoc/irb/rdoc/IRB.html

Для справки я добавляю некоторые популярные запросы, которые я пробовал:

irb(main):017:0> acceptBtn = query("Button marked:'Accept'")
touch(acceptBtn)
query("relativelayout")
query("homeimagebutton")
logOn = query("homeimagebutton id:'home_log_on'")
touch(logOn)
element_exists("* hint:'Search by address, city or zip'")
wait_for_elements_exist( ["* hint:'Search by address, city or zip'"], :timeout => 2)
wait_for_elements_exist( ["* text:'Log On'"], :timeout => 2)

При использовании IRB: Cntrl + D: используйте это, чтобы получить подсказку, если введена неправильная команда For Например. если вы наберете irb(main):002:0> query("*) irb(main):003:1" для возврата к приглашению, выполните Cntrl + D. Теперь вы получите приглашение, похожее на irb(main):003:1> здесь введите 'end', как показано ниже: irb(main):003:1> end Теперь он показывает синтаксическую ошибку и возвращает ее в подсказку, как показано ниже: SyntaxError: (irb):2: неопределенная строка соответствует концу файла (irb): 2: синтаксическая ошибка, неожиданный конец ввода, ожидание ')' из /.rvm/rubies/ruby-2.1.1/bin/irb:11:in `' irb(main):004:0>

Поиск текста на экране: text = запрос ('android.view.View','text') text = text.to_s text.include?'Тестовое сообщение'

Вот некоторые из полезных URL:
[ http://developer.xamarin.com/guides/testcloud/calabash/] [ http://referenceforu.blogspot.com/2013/08/calabash-android-tutorial.html] [ http://blog.lesspainful.com/2012/03/07/Calabash/]
Для понимания того, как использовать IRB Для простого обновления Ruby [ http://rvm.io/]
Чтобы понять, как настроить несколько приложений: [ http://blog.lesspainful.com/2013/03/15/Testing-Multiple-Android-Apps/]

Другие вопросы по тегам