3.1 Robotium常用功能
3.1.1 什么是Robotium
Robotium是一款类似Selenium但面向Android端的开源自动化测试框架,既支持测试Native应用,也支持测试Hybrid应用(混合模式应用,指介于WebApp与NativeApp两者之间的App,兼具Native App良好的用户交互体验的优势以及Web App跨平台、易变更的优势);既支持黑盒形式的自动化测试,也支持白盒形式的自动化测试。通过Robotium用户可以编写出更强大健壮的UI自动化测试用例,并可以应用在功能测试、系统测试、用户验收测试等多种测试场景中。Robotium主要具有以下优势:
同时支持Native应用和Hybrid应用。
由于是基于Instrumentation的测试,测试代码运行于被测应用所在的进程,控件识别与模拟UI事件都可以快速执行,因此测试用例执行速度更快。
由于是通过在运行时识别控件而非通过固定坐标方式,因此测试用例可以更健壮。
由于支持黑盒方式,不需要深入了解被测应用即可开展测试,因此编写用例花费的时间可以更少。
由于可以通过Maven、Gradle或者Ant运行测试用例,因此可以很好地作为持续集成的一部分。
Robotium缺点:
由于是基于Instrumentation的事件发送,因此无法跨应用。
代码运行在被测进程,可能影响被测进程的内存、CPU占用,若用于性能监控数据会有误差。
注:项目开源地址:https://github.com/RobotiumTech/robotium