Android测试:从零开始1——简介
参考文档:https://developer.android.com/training/testing/start/index.html
测试分类
使用android studio进行测试,首先需要先了解android测试的分类,新建工程后,项目会默认包含两个测试目录:
1、本地单元测试(Local unit tests)
测试代码位于module-name/src/test/java/,这些测试直接运行在本地JVM上,不需要使用Android框架的API。
2、设备测试(Instrumented tests)
测试代码位于Located at module-name/src/androidTest/java/,这些测试代码必须运行在Android设备或者Android虚拟机上。
Instrumented测试代码被打包进一个APK,然后在手机上运行。因为运行在设备上,你可以使用app里面的一些方法,修改一些属性,自动化模拟用户交互。
以上两种分类,是根据测试运行在本地JVM上,还是运行在android平台上区分的。一套完整的测试分类如下:
类型 | 子类型 | 描述 |
单元测试 | 本地单元测试(Local Unit Tests) | 运行在本地JVM上的单元测试。当被测试代码不依赖于android框架API,或者模拟androidAPI时,可以使用这种测试减少测试执行时间。 |
设备单元测试(Instrumented unit tests) | 运行在android设备或者模拟器上的单元测试。这些测试运行的时候需要获取设备信息,比如app的上下文(context)。 | |
集成测试 | app组件测试 | 这类测试为了验证,当用户在activity上进行某些操作或者输入某些值时,app是否按照预期去响应。 |
跨app组件测试 | 这类测试为了验证,用户app和系统app之间交互时的正确行为。 |
测试API
下面是介绍一些在android上的通用测试API
1、JUnit
2、Android Testing Support Library(AndroidJUnitRunner,Espresso,UI Automator)
3、Assertion classes(Hamcrest 库)
4、Monkey and mokeyrunner
之后会分别介绍使用如何。