我是新手.我使用以下代码.但它为单元测试用例生成了覆盖范围.但它没有为集成测试用例生成.我在包src/test/java中有我的测试类.
test {
dependsOn jettyRunWar
ignoreFailures true
finalizedBy jettyStop
}
apply plugin: 'jacoco'
jacocoTestReport {
group = "Reporting"
description = "Generate Jacoco coverage reports after running tests."
additionalSourceDirs = files(sourceSets.main.allJava.srcDirs)
}
Run Code Online (Sandbox Code Playgroud) 我有一个项目(ProjectA),其中包含一些单元测试和集成测试.
以下是结构.
ProjectA - src/java(java源代码)
- test/java(Junit单元测试)
- 测试/资源(Junit单元测试所需的资源)
- src/java-test(集成测试)
- conf(包含.xml所需的文件)建筑/测试/编制目的)
我运行以下命令 - 所有这些命令都有效,但我怀疑build.gradle/GRADLE_HOME/init.d/*.gradle文件中的配置如何影响我所获得的.
好像我错过了一些东西而没有得到我想要的东西.
命令:
- gradle clean build - 它工作正常
- gradle clean build jacocoTestReport - 它工作正常.
- gradle clean build IntegrationTest jacocoTestReport - 它工作正常(如果我有一个tomcat实例并在同一个ProjectA的另一个putty窗口中运行).
第三个子弹操作完成后,我在Jenkins作业工作区中看到额外的文件夹"build"及其子文件夹(除了从源/版本控制中检出的文件夹).
ie under - JenkinsWorkspace
/ build
- classes(包含以下提到的.class文件作为sourceSets部分之一)
---- integrationTest
---- main
---- test
- resources(包含所有文件) .这是在"CONF"文件夹中的源代码控制的.properties/.xml文件
- 报告(包含.XML/.html文件的PMD /的CheckStyle/FindBugs的和任一个单元测试结果或IT测试,但不能同时使用)---. - checkstyle
---- findbugs
---- pmd
---- jacoco
---- tests(注意:这是复数,即它不是"test",它被定义为sourceSets中的一个条目)
- jacoco(这包含2个.exec文件,即test.exec和integrationTest.exec都有不同的文件大小)
---- …
integration-testing unit-testing code-coverage gradle jacoco