我有一个使用VueJS开发的应用程序,并与Tomcat进行了战争。 我需要了解战争情况,并与Selenium分别测试runnig。 如果你们中的任何一个能为我指明正确的方向……将不胜感激!
答案 0 :(得分:0)
使用JaCoCo进行此操作需要两个步骤:
1)将jacocoagent
添加到您的Apache Tomcat中,该Tomcat收集coverage数据并在TCP端口上侦听转储这些数据的请求。
在apache-tomcat/bin/setenv.bat
中添加Java选项:
set JAVA_OPTS=-javaagent:c:\\path\\to\\jacoco\\lib\\jacocoagent.jar=includes=your.classes.packages.*,classdumpdir=jacocoClasses,output=tcpserver
2)如果使用Maven执行测试,则可以使用jacoco-maven-plugin连接到jacocoagent
打开的TCP端口,该端口从Apache Tomcat收集coverage数据。
不完整的示例:
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<executions>
<execution>
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<includes>
<include>your/classes/packages/**</include>
</includes>
</configuration>
</execution>
<execution>
<id>default-dump-report</id>
<phase>test</phase>
<goals>
<goal>dump</goal>
</goals>
<configuration>
<address>localhost</address>
<reset>true</reset>
<destFile>${project.build.directory}/jacoco.exec</destFile>
</configuration>
</execution>
<execution>
<id>default-report</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<includes>
<include>your/classes/packages/**</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
请注意,JaCoCo的覆盖率数据仅适用于与它们一起收集的确切.class
文件(由校验和标识)。单个.java
文件的两次编译可能会导致.class
文件具有不同的校验和。 JaCoCo报告将因此宣布它未被发现。