什么是单元测试?
单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。比如我们可以测试一个类,或者一个类中的一个方法。
为什么要进行单元测试?
为什么要进行单元测试?说白了就是单元测试有什么好处,其实测试的好处无非就是减少bug、提高代码质量、使代码易于维护等。
这样表达可能不太好理解,举个例子
比如我们APP启动,从初始化到启动页,再进入首页,需要很长的流程,如果主页需要请求数据,每次都要启动APP,经过一系列流程进入主页,才能测试主页请求数据模块,效率低下。
当然我们也能在初始化时请求数据,但是这样需要更改代码逻辑,同样需要启动APP,而如果用单元测试,我们可以直接测试请求数据模块,不需要任何逻辑修改。提高效率
开始进行单元测试
AS创建工程时,src下创建 androidTest 和 test 目录,
这两个目录有什么区别呢?
src/test | src/androidTest |
---|---|
位于src/tests目录下的测试是运行在本地电脑Java虚拟机上的单元测试。编写测试,实现功能使测试通过,然后再添加更多的测试…这种工作方式使快速迭代成为可能,我们称之为测试驱动开发 | 跟src/test不同的是运行在设备上,并充分利用Android框架的测试 |
简单来说,src/test不需要你连接设备,而src/androidTest需要连接设备测试。
一、先说一下src/tests
- 首先确认app下gradle中存在依赖:
dependencies {
testCompile 'junit:junit:4.12'
}
- 这里有个 快速排序的类,对一个数组进行快速排序
public class FastSort {
pu