Gradle:如何为课程进行仪器测试

时间:2015-09-16 08:44:05

标签: android testing gradle android-gradle android-testing

我正在Android Studio中运行检测测试,运行配置定义如下(不介意警告): enter image description here

所以这是针对特定类调用测试服。如何使用命令行实现这一点,我想使用./gradlew命令?

2 个答案:

答案 0 :(得分:41)

AndroidTestingBlueprint中所述,您可以使用android.testInstrumentationRunnerArguments.class属性:

./gradlew app:connectedAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=com.example.android.testing.blueprint.ui.espresso.EspressoTest

答案 1 :(得分:1)

根据the docs

  

使用Android调试桥从命令行运行测试时   (adb),您可以选择比运行更多的选择来运行测试   任何其他方法。您可以选择单个测试方法,过滤器测试   根据其注释,或指定测试选项。自从   测试运行完全由命令行控制,您可以自定义   使用Shell脚本以各种方式进行测试。

要对特定类使用adb运行检测测试,请执行以下操作:

adb shell am instrument -w -e class 'com.myapp.MyActivityTest' com.myapp.test/android.support.test.runner.AndroidJUnitRunner

请注意,如果您在testInstrumentationRunner文件上定义了自定义app/build.gradle,则需要用自己的android.support.test.runner.AndroidJUnitRunner替换,例如:

adb shell am instrument -w -e class 'com.myapp.MyActivityTest' com.myapp.test/com.myapp.MyCustomTestRunner

提示:如果由于命令不正确而收到错误消息,请知道您可以通过在Android Studio中运行测试来简单地获得正确的命令。您将在“运行”窗口输出中看到命令。


这2个文档页面包含执行选项:

https://developer.android.com/reference/android/support/test/runner/AndroidJUnitRunner#typical-usage

https://developer.android.com/studio/test/command-line#AMSyntax