使用IntelliJ IDEA 14.0.2,我导入了一个gradle java项目。我们已经建立了一个源集和配置来将集成测试与单元测试分开。(我们的集成测试在测试源树中,但在它们自己的包中)。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
}
或者,如何根据“--tests”arg的内容将测试任务委托给另一个任务?
遵循以下步骤:gradle settings>gradle>Runner,并选中Delegate IDE构建/运行操作to gradle。然后申请就可以了。
祝你好运!
我有一个gradle多项目,我的war文件构建在一个子项目中,我的集成测试在另一个子项目中。我已经读到gretty应该能够启动jetty实例,让我在构建期间运行集成测试,但我不知道如何将gretty integrationTestTask任务“连接”到另一个子项目中的任务,从中运行实际测试。 我的项目结构如下所示: 根目录/设置。格雷德尔: 根/构建。格雷德尔: root/web/build。格雷
我错过了什么? 编辑: 看来Gradle也不接我的测试。当我转到时,它指示0 test。 在IntelliJ中,我打开Gradle窗口,点击“刷新所有Gradle项目”按钮,刷新库。 然后在我的测试类中,我在类声明的顶部添加了。 当我执行时,结果可以在下面找到:
我试图使用Gradle的标志运行单个集成测试。我添加了另一个源代码集,并将测试放入其中。我有一个集成测试任务 这运行得很好,但是如果我尝试运行一个测试,它会告诉我它找不到匹配的测试。我不想每次编写一个新的集成测试时都必须运行每个集成测试。有办法做到这一点吗?
我有一个Spring Boot项目,其中定义了几个apiendpoint。我目前正在为每个API编写集成测试。我的测试类注释如下。 现在,对于我的每个测试类,都会设置一个新的上下文来执行它们,这需要时间。我更喜欢将每个apiendpoint的测试用例保存在单独的类中,以便在逻辑上组织它们,但我不希望每次添加新的控制器类和相应的测试类时,我的测试执行时间都会猛增。我在这里做错了什么?
在我的多项目中,我正在根项目上运行测试任务,并期望它将在子项目上运行测试任务并生成一个测试报告。我观察到的是,它从来没有在子项目上运行测试任务。我的期望是不正确的吗?“我需要在我的gradle脚本中进行任何特殊配置吗? 请注意,我的根项目中没有测试。
我必须能够从长列表选择器中访问该数据。删除事件处理程序来自上下文菜单按钮 此代码能够引用长列表选择器中的选项。感谢文卡塔帕蒂·拉朱的帮助 私有void LongListSelector_SelectionChanged(对象发送者,SelectionChangedEventArgs e){LongListSelector选择器=发送者作为longlist选择器; 我得到了这个错误消息,是一个“Sy