Calabash Android - 完整指南

时间:2014-07-05 20:59:03

标签: android calabash calabash-android

我是Calabash的新手 - Android。我建立了环境。如果这个领域的专家能够全面了解整个概念,我将非常感激。我发现许多IDE,如Eclipse,IntelliJ和编辑器,如Sublime,TextWrangler等。我很困惑为理想的Android开发人员选择哪一个。我熟悉Ruby,但不是专家。我应该提高我对Ruby的知识吗?此外,如果有人可以通过提供一些URL来帮助我,我将非常感谢你。我在Stackoverflow上发现了很多问题,但我找不到像我这样的新手的完整指南。我希望有人可以帮助我

1 个答案:

答案 0 :(得分:1)

CALABASH-ANDROID指南

您无需成为Ruby专家来编写功能测试用例或 与QA合作以添加新的测试方案。 Android开发人员 可以舒适地工作,从github(https://github.com/calabash/calabash-android)&结帐Calabash-Android把它添加到你的 IDE。试着理解如何写入步骤定义 在框架中,您可以为您的项目编写Ruby步骤定义 与在框架中编写的方式相同。另外,你可以使用 罐装步骤(但不推荐)。我在这里解释一下 我遵循的步骤&探索实施功能测试 使用Calabash - Android。

<强>前提条件 我假设,你已经设置了Calabash环境,Android SDK,Java, Ruby等(运行Android应用程序所需的所有东西; 葫芦)。我正在使用Genymotion,因为我发现它是最快的 模拟器。你需要选择一个用于Ruby&amp;的IDE。黄瓜。如我一般 使用Android Studio,我更喜欢使用IntelliJ。所以,我正在使用 RubyMine

对Calabash Console&amp;确保一切正常 罚款&amp;先试试控制台。

Calabash控制台
条件 确保您的Genymotion模拟器正在运行

  • 轻松引用apk,导出它(在Mac或Ubuntu中) 导出APK = your_application.apk

  • Resign apk calabash-android辞职$ APK (确保使用相同的梯形校验证书(签名)进行辞职)

  • 打开Calabash控制台 calabash-android console $ APK

  • 启动测试服务器 找不到这个app和calabash版本组合的测试服务器。重新创建测试服务器。 完成对测试服务器的签名。将其移至test_servers / 24433decbe6bdd96b13b9b58258231a8_0.4.20.apk IRB(主):001:0&GT; start_test_server_in_background

返回IRB父方法(Calabash控制台): IRB(主):012:1&GT;结束 参考网址: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:如果键入错误的命令,则使用此命令获取提示 对于Eg。如果你输入     IRB(主):002:0&GT;查询(“*)     IRB(主):003:1"     要回到提示,请执行Cntrl + D.     现在你得到了提示     IRB(主):003:1&GT;     在这里输入'end'如下:     IRB(主):003:1&GT;结束     现在它显示语法错误&amp;得到它的提示如下:     SyntaxError:(irb):2:未终止的字符串符合文件末尾     (irb):2:语法错误,意外的输入结束,期待')'         来自/.rvm/rubies/ruby-2.1.1/bin/irb:11:in`'     IRB(主):004:0&GT;

在屏幕中搜索文字:     text = query('android.view.View','text')     text = text.to_s     text.include?'测试信息'

一些有用的网址是:
    [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/]
    For understanding how to use IRB     为了方便升级Ruby     [http://rvm.io/]
    要了解如何为多个应用程序设置:     [http://blog.lesspainful.com/2013/03/15/Testing-Multiple-Android-Apps/]