不操千曲而后晓声,观千剑而后识器。这篇文章主要讲述运行connectedAndroidTest并跳过卸载相关的知识,希望能为你提供帮助。
有没有办法调用任务connectedandroidTest并在流程结束时跳过卸载任务?
在测试执行结束时,应用程序将从设备中卸载,但我希望将应用程序保留在设备上。
来自http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-tests:
如前所述,使用名为connectedCheck的锚点任务启动需要连接设备的检查。这取决于connectedDebugAndroidTest的任务,因此将运行它。此任务执行以下操作:答案【运行connectedAndroidTest并跳过卸载】查看gradle插件的源代码,无法阻止在测试任务结束时卸载应用程序。你可以在
- 确保构建应用程序和测试应用程序(取决于assembleDebug和assembleDebugAndroidTest)。
- 安装两个应用。
- 运行测试。
- 卸载这两个应用。
SimpleTestCallable
类的android gradle插件中检查一下。从我看到有两种选择来实现你想要的。
首先是在完成连接检查后重新安装应用程序。执行此操作的命令看起来像这样。
./gradlew connectedCheck installDebug installDebugAndroidTest
这将在设备上执行测试并从中删除应用程序。但之后它将重新安装应用程序和测试应用程序。所以应用程序仍然会被移除然后安装,这意味着有点owerhead但是至少应用程序不会被重新编译两次,因为你在同一个gradle执行中执行。第二个选项是不使用gradle执行测试,而是使用adb。要做到这一点,首先需要通过gradle安装app和test app。
./gradlew installDebug installDebugAndroidTest
之后,您可以通过adb执行测试。通过caling
adb shell am instrument -w com.example.test/android.support.test.runner.AndroidJUnitRunner
。完成此操作后,您可以运行cli测试,因为仍然安装了app和test app。
使用第二种方法,您将失去执行测试机智的所有好处。例如代码覆盖和在多个过程中执行等。
推荐阅读
- Android Studio突然崩溃
- Android Studio 3.0.1中的gradle项目同步失败
- 错误 - Android Studio - Gradle Ask
- Hadoop Mapper参数含义
- 从Android Things设备上的应用程序中选择WiFi网络(Raspberry Pi 3)
- 如何使用autolayout将UIScrollView滚动到viewWillAppear的底部,没有可视化动画
- “离子cordova运行android”无法使用cordova-android@7.0.0
- 如何使用Android中的Camera.Parameter在黑白模式下打开和捕捉相机图片
- win10怎样设置宽带连接,本文教您修好宽带连接问