如何设置覆盖,GWT,行家,jacoco?(How do I setup coverage with

2019-11-01 21:29发布

我试图生成代码覆盖率为我的GWT Maven项目。

它与我的JUnit测试

mvn test jacoco:report

但是,当我运行

mvn gwt:test jacoco:report 

一个空的报告生成。

我如何获取代码覆盖率,当我运行GWT:测试?

的pom.xml

GWT:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>gwt-maven-plugin</artifactId>
    <version>2.5.1</version>
<configuration>
    <module>${gwtModule}</module>
    <gwtVersion>2.5.1</gwtVersion>
    <runTarget>https://localhost:8443/dashboard/mainview.jsp</runTarget>
    <noServer>true</noServer>
    <sourcesOnPath>true</sourcesOnPath>
    <hostedWebapp>${war.target}</hostedWebapp>
    <mode>HtmlUnit</mode>
</configuration>
<executions>
    <execution>
        <configuration>
            <extraJvmArgs>-Xmx512m</extraJvmArgs>
        </configuration>
        <goals>
            <goal>compile</goal>
            <goal>test</goal>
        </goals>
    </execution>
</executions>

Jacoco:

<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.6.2.201302030002</version>
<configuration>
    <destfile>${basedir}/target/coverage-reports/jacoco-unit.exec</destfile>
    <datafile>${basedir}/target/coverage-reports/jacoco-unit.exec</datafile>
</configuration>
<executions>
    <execution>
        <id>jacoco-initialize</id>
        <goals>
            <goal>prepare-agent</goal>
        </goals>
    </execution>
    <execution>
        <id>jacoco-site</id>
        <phase>package</phase>
        <goals>
            <goal>report</goal>
        </goals>
    </execution>
</executions>

Answer 1:

输入此命令在命令行“

mvn help:describe -Dplugin=org.jboss.errai:jacoco-gwt-maven-plugin -Ddetail=true 

你会得到从jacoco-GWT-Maven的插件的详细输出。 在这份名单中,你可以看到所有可以设置的配置参数。 你得到的错误,它说建立出错报告:BASEDIR C:\用户......不存在有关,你看,当你跑我上面specifed的命令snapshotDirectory设置。 当你的项目编译,它创建您的所有运行时类都放在一个文件夹中。 你需要找到你的Maven POM是把这些类文件,然后指定你的POM这条道路。 所以说你的类文件的路径位置是“目标/测试类”,那么你的POM将是:

<plugin>
  <groupId>org.jboss.errai</groupId>
  <artifactId>jacoco-gwt-maven-plugin</artifactId>
  <version>0.5.4.201202141554</version>
  <configuration>
    <snapshotDirectory>${project.build.directory}/test-classes</snapshotDirectory>
  </configuration>
</plugin>

另外一两件事要注意KESSE是你最初的问题是从org.jacoco的jacoco - Maven的插件做。 我也无法获得与此插件与GWT测试用例覆盖工作的结果。 然而,上述托马斯Broyer,指出你对从org.jboss.errai组jacoco-GWT-Maven的插件。 这Errai组是JBoss开发者社区的一部分,这个插件涉及Errai框架。 因此,为了从使用GWT测试用例的Errai插件获取代码覆盖率的结果,你必须使用Errai框架。 要了解更多关于Errai框架去http://errai.github.io/ 。



文章来源: How do I setup coverage with GWT, maven, jacoco?