当年做Launcher单元测试的总结的一些要点,回顾一下
简述
参考资料:
Android自动化测试–学习浅谈
Android单元测试实践
Android单元测试 - 如何开始?
Android单元测试系列: java的单元测试比较详细,有MVP和一些流行框架的测试方法
Android有关的单元测试大体分为两类:
本地单元测试
- 运行在jvm上的测试框架,不需要Android环境
- 位于
src/test/java - gradle引入时使用testCompile
- 有
Junit4、Mockito、Powermockito,Robolectric
Android Instrumentation测试
- 运行在Android环境上的测试框架,依赖真机或都模拟器环境
- 代码位于
src/androidTest/java - gradle引入时使用
androidTest
有AndroidJUnitRunner,Espresso,UI Automator
各种框架简介:
Junit4: 基础的Java单元测试Mockito: 模拟测试的类,是一个工具类的集合,配置其它框架使用Robolectric: JVM环境中模拟Android的环境,可以在不连接Android设备的情况下进行测试。听起来很美好,但使用起来不是很方便,还一堆坑,介绍文章: https://www.jianshu.com/p/d0bc9ebaaea1Espresso: UI测试,适合白盒测试UI Automator: UI测试,适合黑盒测试,测试组的自动化脚本应该就是基于这个写的
框架结构
使用Android Instrumentation测试,测试代码写在src/androidTest/java目录下
使用到的框架有junit4, mockito, Instrumentation, uiautomator, espressogradle下的依赖方式:
1 | defaultConfig { |