- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
安卓自动化Robotium使用和持续集成QA—张亚洲
目录1Robotium介绍2Robotium工作原理3Robotium的使用4Robotium和jenkins的持续集成
Robotium简介Robotium是一个测试框架,能够方便你为Android应用程序编写强大、健壮的自动化黑盒测试用例。能够模仿普通用户行为,可以试着把一些原来由测试工程师做的测试变成Robotium自动化实现。?Robotium的优点:1.框架支持多个activities自动活动。2.最短的时间需求写出测试用例。3.执行测试用例速度快。4.顺利整合了Jenkins或Ant来运行测试,持续集成的一部分。5.该工具用于黑盒的自动化测试。可以在有源码或者只有APK的情况下对目标应用进行测试,提供了模仿用户操作行为的API,比如在某个控件上点击,输入Text等等。?
自动化测试工具Robotiun、Appium、Monkeyrunner对比
Robotium工作原理图
Robotium环境搭建安装JDK?安装的版本:JDK1.7win764位,安装后配置环境变量安装SDK安装的版本:win764位,安装后配置环境变量安装Eclipse去官网下载对应的版本,下载后解压到本地。安装ADT插件可在eclipse里面安装,HelpInstallNewSoftwareAdd输入,按照提示进行安装。
在官方down所需要的jar包
地址:
打开eclipse,选择File-New-Project…-Android-AndroidTestProject,点击Next。输入测试工程名GameTest下面介绍只有APK包的测试。Robotium使用
选择:Thisproject3选择一个已经创建好的模拟器,点击Finish。4在刚创建的工程的包里创建一个测试类:选择src选中包名NewJunitTestCase。5导入robotium.jar选择测试工程GameHallTest右击,选择BuildPath-ConfigureBuildPath…在打开的Libraries中点击AddExternalJARs…按钮,选择从官网下载的两个jar包。
在OrderandExport中,勾选robotium的两个jar包,然后点击OK按钮
6修改AndroidManifes.xml文件,修改的targetPackAge包名一定要和要测试的包名对应
7以棋牌大厅为例,下面是简单的启动后验证是否有“向左滑动有更多游戏”的例子(创建的测试方法名必须以test开头)。
packagecom.XXXXX.XXXXXtest;?importcom.robotium.solo.*;//导入robotium提供的测试用solo类importandroid.test.ActivityInstrumentationTestCase2;//测试工程要继承用来测试activity的父类?@SuppressWarnings(rawtypes)publicclassMainActivityTestextendsActivityInstrumentationTestCase2{ privateSolosolo; privatestaticfinalStringLAUNCHER_ACTIVITY_FULL_CLASSNAME=com.XXXXX.XXXX.MainActivity;?privatestaticClass?launcherActivityClass;static{//创建异常try{launcherActivityClass=Class.forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME);}catch(ClassNotFoundExceptione){thrownewRuntimeException(e);}} @SuppressWarnings(unchecked)publicMainActivityTest()throwsClassNotFoundException{super(launcherActivityClass);}?
publicvoidsetUp()throwsException{ solo
文档评论(0)