1 回答

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個贊
1.首先需要對統(tǒng)計模塊的POM.XML增加如下字段:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.6</version>
<configuration>
<formats>
<format>html</format>
<format>xml</format>
</formats>
</configuration>
</plugin>
</plugins>
</reporting>
或用<reporting>標(biāo)簽,如下:
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
</plugins>
</reporting>
區(qū)別:在reporting節(jié)點(diǎn)中加入則在mvn site中執(zhí)行,如果在build節(jié)點(diǎn)中加入,則在build的時候自動運(yùn)行檢查。注意:如果是多模塊的maven項目,需要在每個想統(tǒng)計模塊的pom.xml中進(jìn)行配置,這樣會將各模塊的報告進(jìn)行匯集。
2.執(zhí)行下面的cobertura命令
[plain] view plaincopy
mvn cobertura:help 查看cobertura插件的幫助
mvn cobertura:clean 清空cobertura插件運(yùn)行結(jié)果
mvn cobertura:check 運(yùn)行cobertura的檢查任務(wù)
mvn cobertura:cobertura 運(yùn)行cobertura的檢查任務(wù)并生成報表,報表生成在target/site/cobertura目錄下
cobertura:dump-datafile Cobertura Datafile Dump Mojo
mvn cobertura:instrument Instrument the compiled classes
另,有的項目一些借口定義,常量定義和異常定義這些是不需要單元測試的,還有一些不重要的,我們可以進(jìn)行過濾
按類的類別進(jìn)行過濾
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<ignores>
<!--經(jīng)過修改的 cobertura, 支持方法級別的過濾 -->
<ignore>*main*</ignore>
<!--以上修改指的是過濾項目中所有類中的方法名中含有 main 的方法 -->
</ignores>
<IgnoreTrival>true</IgnoreTrival>
</configuration>
</plugin>
或?qū)β窂竭^濾:
<configuration> <instrumentation> <excludes> <!--此處用于指定哪些類會從單元測試的統(tǒng)計范圍中被剔除 --> <exclude>exs/res/process/egencia/Mock*.class</exclude> <exclude>exs/res/process/test/**/*Test.class</exclude> </excludes> </instrumentation> </configuration> <executions> <execution> <goals> <goal>clean</goal> </goals> </execution> </executions>
- 1 回答
- 0 關(guān)注
- 1488 瀏覽
添加回答
舉報