我是Gradle的新手。我使用的是Gradle 1.10和Ubuntu 13。
我想知道是否有任何命令只执行一个单元测试类,类似于SBT中的testOnly。
我是Gradle的新手。我使用的是Gradle 1.10和Ubuntu 13。
我想知道是否有任何命令只执行一个单元测试类,类似于SBT中的testOnly。
当前回答
在Gradle 5之前的版本中,测试。单个系统属性可用于指定单个测试。
你可以用gradle -Dtest。single=ClassUnderTestTest test如果你想测试单个类或使用regexp如gradle -Dtest。single=ClassName*Test Test您可以在此链接下找到更多筛选测试类的示例。
Gradle 5删除了这个选项,因为它被使用——tests命令行选项的测试过滤所取代。
其他回答
在Gradle 5之前的版本中,测试。单个系统属性可用于指定单个测试。
你可以用gradle -Dtest。single=ClassUnderTestTest test如果你想测试单个类或使用regexp如gradle -Dtest。single=ClassName*Test Test您可以在此链接下找到更多筛选测试类的示例。
Gradle 5删除了这个选项,因为它被使用——tests命令行选项的测试过滤所取代。
经过深思熟虑后,我发现以下方法对我很有效:
测试“a.b.c.m etestfile . mysingletest”
下面是使用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
在我的例子中,我的eclipse java编译器警告设置得太高,eclipse没有将我的类识别为可以执行的有效类。更新我的编译器设置解决了这个问题。你可以在这里阅读更多关于它的信息:annotation-nonnull-can - not-be-resolved
这对我很有效
释放的例子: gradle testReleaseUnitTest——测试testClass 调试情况: gradle testDebugUnitTest——测试AsyncExecutorTest
您可以使用:gradle -q projects查看项目,并移动到要测试的类所在的项目