开发测试篇-android测试-介绍(翻译自android training官网)
原文链接:官网地址
android 测试相关
android测试基于JUnit
1. java测试 不需要android的api访问 , 可以直接运行, 不需要android设备, 默认文件路径 --> Located at module-name/src/test/java/.
2. android测试(组件测试), 需要运行在android的硬件设备或者模拟器上, 默认文件路径 module-name/src/androidTest/java/.
组件测试,会打入apk,并且会在设备上运行test apk.系统运行你的测试apk和正在app在相同的进程中,所以测试代码,是可以调用app的方法和修改字段的值,并且也可以模拟用户和你的app的交互
单元测试
- 本地单元测试 java单元测试
- 组件单元测试 android单元测试
集成测试
- app内部组件集成测试
- 跨app的集成测试
集成测试
Assertion classes
android的测试继承自JUnit,因而可以使用JUnit的断言,效果比使用log日志有着更好的测试体验,为了简化测试的开发,应该使用 Hamcrest library 来做测试,使用Hamcrest的matchers, 可以创建更加灵活的测试,并且报告错误,或者通过多次相同的随机数种子,来重复一系列的事件
Monkey和 Monkey runner
android SDK 包含了两个功能级别的app测试的工具
Monkey
命令行,发送随机的按键,触摸,以及手势,可以使用adb的方式,来进行app的压力测试,报告错误,或者通过多次相同的随机数种子,来重复一系列的事件monkey runner
这个工具是个api,能够执行Python写的测试项目的一个环境.这个API包含链接设备,安装和卸载apk,切屏,对比两个图片,运行一个app的测试包.通过这个api,可以写出范围广,牛逼的,复杂的测试用例.通过这个API来运行项目,需要使用monkeyrunner的命令行工具.