Tho*_*asV 8 android automated-tests gradle android-gradle-plugin
有没有办法在任务结束时调用任务connectedAndroidTest并跳过卸载任务?
在测试执行结束时,已从设备上卸载了该应用程序,但我想将该应用程序保留在设备上。
来自http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-tests:
如前所述,需要连接设备的检查会通过名为connectedCheck的锚定任务启动。这取决于任务connectedDebugAndroidTest,因此将运行它。此任务执行以下操作:
- 确保已构建应用程序和测试应用程序(取决于assembleDebug和assembleDebugAndroidTest)。
- 安装两个应用程序。
- 运行测试。
- 卸载两个应用程序。
查看gradle插件的源码,无法阻止在测试任务结束时卸载应用程序。您可以在SimpleTestCallableandroid gradle插件类中进行检查。
从我看来,有两种选择可以满足您的需求。
第一个是在完成连接检查后重新安装应用程序。执行此操作的命令如下所示。./gradlew connectedCheck installDebug installDebugAndroidTest这将在设备上执行测试并从中删除应用程序。但是之后,它将重新安装应用程序并测试应用程序。因此,应用程序仍将被删除然后再安装,这意味着有些麻烦,但由于您在同一gradle执行中执行,因此至少不会对应用程序进行两次重新编译。
第二种选择是不使用gradle执行测试,而是使用adb。为此,您首先需要安装应用程序并通过gradle测试应用程序。
./gradlew installDebug installDebugAndroidTest
之后,您可以通过adb执行测试。通过校准adb shell am instrument -w com.example.test/android.support.test.runner.AndroidJUnitRunner。
完成此操作后,由于仍安装了应用程序和测试应用程序,因此您可以运行cli测试。
使用第二种方法,您将失去执行测试机智gradle的所有好处。例如代码覆盖率和在多个过程中执行等。
| 归档时间: |
|
| 查看次数: |
777 次 |
| 最近记录: |