在开发当中我们经常有这样的需求,比如我想知道以下表达式的结果:
Environment.getExternalStorageDirectory().getPath()
这个时候你可能会说这个还不容易么?我在项目的MainActivity当中打印一下日志不就可以了么?可以,但是这样会有一个问题,如果你的项目很大,那你为了看一个表达式的值又把整个项目重新运行一遍那多不划算,而且在你删除你测试的东西的时候无形中会改动当前类,一不小心还可能多删除一些内容。
为此,我们的单元测试junit就派上用场了,怎么用呢?
1、首先我们引入junit的依赖
testCompile 'junit:junit:4.12'
这个默认在我们创建项目的时候就添加了,不用自己手动添加
2、编写测试类和方法
3、生成测试类
在刚才创建的类上面右击,依次选择如下:
然后选择Create New Test....
如果你是第一次创建单元测试,那么该选项只会有Create New Test,图中的第一个AndroidUnitTest是已经创建好的单元测试。
如上图所示
1 代表你要创建的单元测试的名字
2 setUp这个选项我们勾选上,到时候会在生成的类中添加各种方法,该方法的作用是为单元测试做一些准备工作。
3 表示我们要进行单元测试的方法,也就是在上一步类中创建的方法。
在这里需要注意一点:我们进行单元测试的方法一定要设置为public,如果设置为private的话就无法在第三步中生成我们的单元测试方法,如下图所示:
4、选择要生成的测试类的位置,默认放在androidTest目录下面即可。
5、在新生成的测试类中填写相关方法。
6、运行单元测试方法
7、在Logcat当中查看结果
至此一个简单的单元测试过程就完成了。
8、单元测试无法使用怎么办?
如果你在生成新的单元测试类的时候一直有这样的情况话,如下图所示:
即你的单元测试包怎么样也引入不成功,那么很有可能就是你项目当中有报错,在配置文件中或者是其他地方,你可以新建一个Android项目,再进行单元测试就可以了。