我是Gradle的新手。我使用的是Gradle 1.10和Ubuntu 13。

我想知道是否有任何命令只执行一个单元测试类,类似于SBT中的testOnly。


当前回答

对于多模块项目,有必要使用模块的名称和buildType:

./gradlew :module_name:testDebugUnitTest --tests com.package_name.TestsClass.*

运行一些测试方法,使用相同的命令,但是使用test的名称:

./gradlew :module_name:testDebugUnitTest --tests com.package_name.TestsClass.test 

其他回答

经过深思熟虑后,我发现以下方法对我很有效:

测试“a.b.c.m etestfile . mysingletest”

运行一个名为MyTest的测试:

./gradlew app:testDebug --tests=com.example.MyTest

对于多模块项目,有必要使用模块的名称和buildType:

./gradlew :module_name:testDebugUnitTest --tests com.package_name.TestsClass.*

运行一些测试方法,使用相同的命令,但是使用test的名称:

./gradlew :module_name:testDebugUnitTest --tests com.package_name.TestsClass.test 

这对我很有效

释放的例子: gradle testReleaseUnitTest——测试testClass 调试情况: gradle testDebugUnitTest——测试AsyncExecutorTest

您可以使用:gradle -q projects查看项目,并移动到要测试的类所在的项目

下面是使用gradlew命令行选项运行单个测试类的命令:

gradlew.bat Connected**your bundleVariant**AndroidTest -Pandroid.testInstrumentationRunnerArguments.class=com.example.TestClass

使用变量Variant_1运行com.example.TestClass类:

gradlew.bat ConnectedVariant_1AndroidTest -Pandroid.testInstrumentationRunnerArguments.class=com.example.TestClass