当年做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
, espresso
gradle
下的依赖方式:
1 | defaultConfig { |