Android单元测试介绍
处于高速迭代开发中的Android项目往往需要除黑盒测试外更加可靠的质量保障,这正是单元测试的用武之地。单元测试周期性对项目进行函数级别的测试,在良好的覆盖率下,能够持续维护代码逻辑,从而支持项目从容应对快速的版本更新。
单元测试是参与项目开发的工程师在项目代码之外建立的白盒测试工程,用于执行项目中的目标函数并验证其状态或者结果,其中,单元指的是测试的最小模块,通常指函数。打包时单元测试的代码不会被编译进入APK中。
Android单元测试框架
Android的单元测试可以分为两大类:
android中的单元测试基于JUnit4,可分为instrumented测试和本地测试。
1.module-name/src/androidTest/java/.
该目录下的测试代码需要运行在android设备或模拟器下面,因此可以使用android系统的API,速度较慢。
优点:直观,运行在真机上
缺点:运行速度慢,需要编译安装app
代表框架:UIAutomator,Robotium,Espresso,Macaca,Appium等
2.module-name/src/test/java/.
该目录下的代码运行在本地JVM上,其优点是速度快,不需要设备或模拟器的支持,但是无法直接运行含有android系统API引用的测试代码。
优点:速度快,使用简单,方便
缺点:不够直观,比如有硬件相关(比如wifi,Bluetooth等)