@jzp113
2018-08-06T09:13:01.000000Z
字数 719
阅读 1173
Android
自动化
MonkeyRunner
Android SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本用Python来写,对测试人员来说要求较高,有比较大的学习成本
Instrumentation
基于Android单个Activitiy的测试框架。
UiAutomator
Android提供的自动化测试框架,基本上支持所有的Android事件操作,对比Instrumentation它不需要测试人员了解代码实现细节(可以用UiAutomatorviewer抓去App页面上的控件属性而不看源码)。基于Java,测试代码结构简单、编写容易、学习成本,一次编译,所有设备或模拟器都能运行测试,能跨App(比如:很多App有选择相册、打开相机拍照,这就是跨App测试)。缺点是只支持SDK 16(Android 4.1)及以上,不支持Hybird App、WebApp
。
Appium
跨平台,允许采用同一套API在不同的平台(IOS,Android)上编写测试代码,让测试套件在IOS和Android平台上实现代码复用成为可能。
框架 | 语言 | 运行方式 | 限制 | 适用环境 |
---|---|---|---|---|
MonkeyRunner | python | ADB | 测试靠坐标 | 压力测试 |
Instrumentation | Java | ADB | 只能单个Activity测试,且需要应用相同签名,代码量大 | 白盒测试 |
UiAutomator | Java | ADB或脱机 | Android 4.X+ | UI测试 |
Appium | 多种语言 | ADB | 无 | UI测试 |
结论:adb都不适用,只能用Android 原生的UiAutomator框架自己编写养号。