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

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


person user2037157    schedule 05.07.2014    source источник


Ответы (1)


РУКОВОДСТВО ПО CALABASH-ANDROID

Вам не нужно быть экспертом по 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, убедитесь, что все работает нормально, и попробуйте сначала на консоли.

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

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

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

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

  • Запустить тестовый сервер Для этой комбинации приложения и версии калебаса тестовый сервер не найден. Воссоздание тестового сервера. Подписание тестового сервера завершено. Переместил его в test_servers/24433decbe6bdd96b13b9b58258231a8_0.4.20.apk irb(main):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: используйте это, чтобы получить подсказку, если введена неправильная команда. Например. если вы наберете 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 = query('android.view.View','text') text = text.to_s text.include?'test message'

Вот некоторые из полезных 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/]

person Community    schedule 05.07.2014