5.2 运行测试

正如前面所提到的,引导任务 connectedCheck 需要一个已经连接的设备才能运行。
这会依赖 androidTest ,所以 androidTest 也会被运行。这个任务做了以下事情:

  • 确保应用和测试应用已经被构建(依赖 assembleDebugassembleTest )
  • 安装这两个应用
  • 运行测试
  • 卸着这两个应用

如果同时有多个连接的设备,那么所有的测试会在所有的设备上运行。不管在哪个设备上,只要有一个测试失败,那么整个构建就是失败的。

所有的测试结果已XML的格式被存储在 build/androidTest-results 目录下。(这类似于 jUnit ,它的结果存储在 build/test-results 目录下)

当然,你可以自己设置

  1. android {
  2. ...
  3. testOptions {
  4. resultsDir = "$project.buildDir/foo/results"
  5. }
  6. }

android.testOptions.resultsDir 的值是通过 Project.file(String) 得到。