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