小编And*_*dyL的帖子

如何从IntelliJ上下文菜单中为gradle项目运行集成测试?

使用IntelliJ IDEA 14.0.2,我导入了一个gradle java项目.我们已经设置了一个sourceSet和配置来将集成测试与单元测试分开.(我们的集成测试在测试源代码树中,但在他们自己的包中).build.gradle的相关位是:

sourceSets {
  test {
    java {
      exclude '**/it/**'
    }
  }

  integTest {
    java {
      srcDir 'src/test/java'
      include '**/it/**'
    }
    resources {
      srcDir 'src/test/resources'
    }
    compileClasspath += sourceSets.main.output + sourceSets.test.output + configurations.testRuntime
    runtimeClasspath += sourceSets.main.output + sourceSets.test.output + configurations.testRuntime
  }
}

configurations {
  integTestCompile.extendsFrom testCompile
  integTestRuntime.extendsFrom testRuntime
}

idea {
  module {
    scopes.TEST.plus += [ configurations.integTestCompile ]
  }
}

task integTest(type: Test) {
  testClassesDir = sourceSets.integTest.output.classesDir
  classpath = sourceSets.integTest.runtimeClasspath
}
Run Code Online (Sandbox Code Playgroud)

从命令行可以正常工作.但是当我在IntelliJ中打开集成测试的源代码并右键单击以运行它时,IntelliJ启动"测试"任务而不是"整合测试"任务.如何让IntelliJ启动正确的任务?

或者,如何根据"--tests"arg的内容将测试任务委托给另一个任务?

unit-testing intellij-idea gradle

11
推荐指数
1
解决办法
6725
查看次数

标签 统计

gradle ×1

intellij-idea ×1

unit-testing ×1