配置和运行单元测试
配置和运行本地单元测试
本地单元测试
本地单元测试用来执行那些对Android没有依赖或Android依赖容易mock的单元测试.
本地单元测试运行在自己电脑上,测试用例在本地虚拟机上编译运行,执行速度快.
本地单元测试写在app\/src\/test\/java目录下.
本地单元测试使用JUnit或TestNG测试框架.
使用的演示代码
这里使用Google官方开源的示例进行演示,地址\/\/github.com\/googlesamples\/android-testing\/tree\/master\/unit\/BasicSample
使用的测试框架
我们用JUnit测试框架举例.
使用IDE运行本地单元测试
打开BasicSample项目,在EmailValidatorTest编辑界面或项目窗口中的类名上右击 —> Run ‘EmailValidatorTest’
这样EmailValidatorTest这个测试类里面的所有测试用例都会被执行.
如果只想执行某一个测试用例,在测试用例名上右击,选择‘Run 用例名’来执行.
如果想某个目录下所有的用例都被执行,在目录名上右击,选择‘Run Test in 目录名’来执行.
保存临时配置
通过上面的方法运行完测试之后,在工具栏的运行配置列表中显示了刚才运行的测试类. 这个配置是自动生成的,如果需要保存,点击 [Save ‘测试类名’ Configuration].
配置本地单元测试
如果我们需要自定义本地单元测试配置,可以这样做.
操作步骤:
打开Run\/Debug Configurations对话框 —> 点击左上角的+号 —> JUnit
然后新增一个JUnit配置窗口:
1.Name: 输入配置名
2.Use classpath of module: 选择测试模块,下拉列表中会列出项目所有的模块,选择我们需要测试的.
3.Test kind: 选择一种测试范围,本例中选择的是Class
4.测试用例配置: Class: 选择测试类
测试用例配置项跟我们选择的测试范围是相关联的.
如果Test kind选择Class,显示测试类的配置项.
如果Test kind选择Method,显示测试类和方法的配置项.
其它Test kind与此类似,这里就不一一列举了.
5.Fork mode: 用来指定是为每个测试用例都创建一个进程,还是所有测试用例在一个进程中执行.
两个选项:
none: 在一个进程中执行所有测试[图片]执行结果: 耗时8ms
method:每个测试用例都会创建一个测试进程,这种方式会比较慢.[图片]执行效果: 耗时19ms
6.Repeat:
Once:所有用例只执行一次[图片]N Times: 自定义用例执行次数,比如:设置5次,每一条用例都会被执行5次.[图片]Until Failure: 不断重复执行,直到用例失败.[图片]Until Stopped: 不断重复执行,直到手动停止.
7.VM options: 默认值为-ea,用来设置jvm是否启动断言机制.
8.JER环境,使用默认的就好了.