如何使用gradle android运行单个测试

Jav*_*ano 32 testing android robotium android-testing

我正在尝试使用此行运行测试...但是这会启动所有测试:

./gradlew -DconnectedAndroidTest.single=LandingActivityTests connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)

我该如何进行单一测试?

ssc*_*rth 44

从Android Gradle插件版本1.3.0开始就可以使用了

./gradlew -Pandroid.testInstrumentationRunnerArguments.class=your.package.LandingActivityTests connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)

  • 这是最好的答案,考虑到**当前**情况 (2认同)

aaa*_*hun 18

你可以分两步运行单个android测试:

  1. ./gradlew installDebugAndroidTest
  2. adb shell am instrument -w -e class com.example.MyInstrumentationTest#testFoo com.example.test/android.support.test.runner.AndroidJUnitRunner
    https://developer.android.com/tools/testing/testing_otheride.html


Ped*_*tos 10

如果你想在课堂上只运行一次测试就可以了

./gradlew -Pandroid.testInstrumentationRunnerArguments.class=my.app.package.register.RegisterEmailTest#can_register connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)

can_register 是一个类中的方法 RegisterEmailTest

注意:包需要引用类的位置,否则它将不起作用.

  • 由于`modules`,它对我不起作用,但对于其他人来说,如果你想在特定的`module`中运行特定的TestClass,那么你可以使用:`$ ./gradlew -Pandroid.testInstrumentationRunnerArguments.class=com.blah.blah .MyActivityTest <modulename>:connectedAndroidTest` (2认同)