运行 单个测试套件 Gradle Java
Run single testsuite with Gradle Java
这是我的 Gradle 脚本:
test{
include 'com.foo.MainTestSuite'
testLogging.showStandardStreams = true
}
这是我的 com.foo.MainTestSuite
@RunWith(Suite.class)
@Suite.SuiteClasses({
NetworkTestSuite.class,
DataBaseTestSuite.class
})
public class MainTestSuite {
@BeforeClass
public static void setup(){
System.out.println("BeforeClass MainTestSuite");
}
@AfterClass
public static void tearDown(){
System.out.println("AfterClass MainTestSuite");
}
}
然后我通过命令行执行 Gradle:
./gradlew clean test
但是没有进行任何测试运行。如果我删除 include
那么我所有的测试 运行 但不止一次,因为它们也是从测试套件链接的。
我的 Gradle 脚本有什么问题,为什么 MainTestSuite 没有被执行?
尝试将 build.gradle
中的测试部分更改为以下内容:
test{
filter{
includeTestsMatching 'com.foo.MainTestSuite'
}
testLogging.showStandardStreams = true
}
这将得到您想要的结果
请参阅 Gradle Test Filtering 文档了解更多详情
这是我的 Gradle 脚本:
test{
include 'com.foo.MainTestSuite'
testLogging.showStandardStreams = true
}
这是我的 com.foo.MainTestSuite
@RunWith(Suite.class)
@Suite.SuiteClasses({
NetworkTestSuite.class,
DataBaseTestSuite.class
})
public class MainTestSuite {
@BeforeClass
public static void setup(){
System.out.println("BeforeClass MainTestSuite");
}
@AfterClass
public static void tearDown(){
System.out.println("AfterClass MainTestSuite");
}
}
然后我通过命令行执行 Gradle:
./gradlew clean test
但是没有进行任何测试运行。如果我删除 include
那么我所有的测试 运行 但不止一次,因为它们也是从测试套件链接的。
我的 Gradle 脚本有什么问题,为什么 MainTestSuite 没有被执行?
尝试将 build.gradle
中的测试部分更改为以下内容:
test{
filter{
includeTestsMatching 'com.foo.MainTestSuite'
}
testLogging.showStandardStreams = true
}
这将得到您想要的结果
请参阅 Gradle Test Filtering 文档了解更多详情