2012-02-29 86 views
0

將emma.jar複製到$JAVA_HOME/lib/ext &使用以下命令對它進行了檢測。Emma未創建coverage.ec文件

java -cp emma.jar emma instr -m overwrite -cp @jarlist.txt

jarlist.txt載有從Tomcat的WAR文件部署的JAR文件的列表。而且它得到了成功儀表&創建coverage.em

EMMA:處理儀器儀表路徑...

EMMA:[4125級(ES:儀器儀表路徑5119毫秒

EMMA處理)儀器,3142資源(多個)複製]

EMMA:元數據合併到[/root/install/apache-tomcat-7.0.19/webapps/coverage.em] {在553毫秒}

但即使重新啓動tomcat多次coverage.ec文件未創建。我在這裏錯過了什麼?

回答

1

當我將emma.jar複製到$ CATALINA_HOME/webapps/myapplication/WEB-INF/lib &中時,然後使用emma解決了此問題。

3

停止Tomcat服務後,您可以在tomcat日誌中搜索coverage.ec

它將出現在具有指定路徑的日誌結束日誌中。

0

我也跟着下面的步驟:

  1. 複製emma.jar到\ JRE \手動創建jarlist.txt與我要儀器的jar文件列表中的lib \ ext文件夾

例如:

E::\驅動\網絡\ WEB-INF \ lib中\ abc.jar E:\驅動\網絡\ WEB-INF

的完整路徑的JAR名稱\ LIB \ xyz.jar

放在jarlist.txt在同一文件夾 - JRE \ LIB \ ext文件夾

  1. 使用以下命令儀器化JARS:

C:\ Program Files文件\ java的\ JRE \ lib中\分機>java命令emma.jar艾瑪的instr -m覆蓋-cp @ jarlist.txt

結果: EMMA:加工儀表路徑... EMMA:儀器路徑在3819毫秒內處理EMMA:[1942分類儀器儀表,1030個資源被複制] EMMA:元數據合併到[\ jre \ lib \ ext \ coverage。EM] {668}毫秒

第二次,如果你使用相同的命令嘗試將只得到以下結果:

EMMA:處理儀器儀表路徑... EMMA:儀器儀表路徑在1875年毫秒 處理EMMA:[0 class(es)instrumented,2972 resources(s)copied] EMMA:no output created:metadata is empty

因爲jars已經檢測到 - > 0類並且沒有創建輸出。

- >啓動Tomcat和執行某些操作

Tomcat的日誌,你可以找到象下面這樣: EMMA:收集運行覆蓋數據...

如果u能找到這意味着你會得到覆蓋.ec文件,同時停止Tomcat服務。

停止Tomcat服務:日誌的最後階段會顯示如下圖所示:

EMMA:運行時覆蓋數據合併到[\ tomcat的\ BIN \ coverage.ec] {在48毫秒}

生成報告:

C:\ JRE \ lib中\分機>java命令emma.jar艾瑪報告-r HTML -in coverage.em,...... \ tomcat的\ BIN \ coverage.ec

EMMA:處理輸入文件... EMMA :2文件閱讀併合並在582 ms EMMA:將[html]報告寫入[c:\ jre \ lib \ ext \ coverage \ index.html] ...

您可以打開並查看Index.html查看報告。