Android开发:《Gradle Recipes for Android》阅读笔记(翻译)5.3——使用Robotium进行功能测试
Posted tootwo2
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发:《Gradle Recipes for Android》阅读笔记(翻译)5.3——使用Robotium进行功能测试相关的知识,希望对你有一定的参考价值。
问题:
你想要使用Robotium库测试activity。
解决方案:
增加Robotium依赖,编写自己的测试脚本。
讨论:
android Test Support Library提供类可以操作activity里的窗口部件,但是有更简单的方式操作Android UI。虽然这本书不是介绍测试的,但是可以很容易的将Robotium依赖增加到Gradle然后运行测试。
Robotium项目被描述成“像Selenium,但是为了Android”。这是一个自动化测试框架,可以很方便的为Android app编写出黑盒的UI测试。
只要在模块下面的Gradle配置文件里面增加Robotium的依赖:
考虑下面的叫做MyActivity的简单的activity,提示用户输入姓名,将它添加到Intent,打开WelcomeActivity欢迎用户:
Robotium提供了一个叫做com.robotium.solo.Solo,它包括了被测试的activity和Instrumentation对象。它允许你增加文字,点击按钮,和更多的操作,而不用担心是不是在UI线程。下面展示了一个在activity上的例子:
Robotium测试继承自ActivityInstrumentationTestCase2。Solo实例和activity一起被初始化。测试使用Solo类的方法,像enterText,clickOnButton或者searchText。
使用Robotium唯一的缺点就是测试使用旧的JUnit3的结构,有预先定义的setUp和tearDown方法,所有测试必须符合public void testXYZ格式。相对的,易于书写的测试还是很突出的。
测试类像其它Android测试易于存放在androidTest结构下面。通过connectedCheck任务在所有模拟器和连接的设备上执行。
下面显示在两个模拟器上运行的结果:
点击“Devices”按钮显示从device角度显示相同的结果:
Robotium的Github地址:https://github.com/robotiumtech/robotium
以上是关于Android开发:《Gradle Recipes for Android》阅读笔记(翻译)5.3——使用Robotium进行功能测试的主要内容,如果未能解决你的问题,请参考以下文章
Android开发:《Gradle Recipes for Android》阅读笔记1.5
Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.4——更新新版本的Gradle
Android开发:《Gradle Recipes for Android》阅读笔记1.2
Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.5——在项目中共享配置