Testing gradle任务可多次运行测试

Testing gradle任务可多次运行测试,testing,gradle,Testing,Gradle,我想创建gradle任务,以便在不同的系统属性集下多次运行所有测试。 e、 g.buffersize有一个系统属性,我想为buffersize的不同设置多次运行所有测试 build.gradle: apply plugin: 'java' repositories { jcenter() } dependencies { testCompile 'junit:junit:4.12' } task one( type: Test ) { systemProperty 'some.

我想创建gradle任务,以便在不同的系统属性集下多次运行所有测试。 e、 g.buffersize有一个系统属性,我想为buffersize的不同设置多次运行所有测试

build.gradle:

apply plugin: 'java'

repositories {
  jcenter()
}

dependencies {
  testCompile 'junit:junit:4.12'
}

task one( type: Test ) {
  systemProperty 'some.prop', 'one'
}

task two( type: Test ) {
  systemProperty 'some.prop', 'two'
}

task main( dependsOn: [one, two] ) {
}
src/test/java/MyTest.java:

import org.junit.Test;

public class MyTest {
  @Test
  public void test() {
    System.out.println( System.getProperty( "some.prop" ) );
  }
}
>gradle main--信息


如果测试不依赖于环境,而是设置适当的环境,那就更好了。此类测试将产生可重复的结果。是否可以在@Before方法中设置系统属性?在这种情况下,测试类的每个子类都可以定义不同的系统属性。另一个好处-测试报告将更准确。@al_l_ex,但我应该这样做谢谢,我发现,另一个问题是,当任何单元测试在任务“1”中失败时,它将显示生成失败,并且不会继续执行任务“2”。我认为他们在Gradle2.12RC中提供了continue execution,其中包含“-continue”关键字,以便在测试失败时继续执行。我不知道是否可以使用RC。请尝试忽略失败选项:
....
MyTest > test STANDARD_OUT
one
....
MyTest > test STANDARD_OUT
two