2016-08-02 202 views
2

我最近下載了Netbeans 8.1 hereNetbeans 8.1中缺少測試覆蓋率?

我選擇了第二個選項:「Java EE」。

但我找不到如何爲我的單元測試運行測試覆蓋率。我有這樣的菜單:

enter image description here

這是一個Maven的Web應用程序。

當我去工具 - >插件,搜索 「覆蓋」,我有這樣的:

enter image description here

我安裝了它,並重新啓動IDE,我看到了它是安裝插件,但我的菜單沒有改變。如果我在安裝的插件中搜索「coverage」,則沒有任何東西顯示出我剛剛安裝的東西......我以爲Netbeans是否實施了它?我也想過了Netbeans的Maven的測試覆蓋率,以及...

我讀我安裝了插件(TikiOne JaCoCoverage)就是已經存在的Netbeans的測試覆蓋率的擴展..所以這可以解釋爲什麼我看不到它。

如何啓用測試覆蓋?

謝謝。

回答

5

您應該將JaCoCo插件添加到您的pom.xml文件的<plugins>部分。

 <plugin> 
      <groupId>org.jacoco</groupId> 
      <artifactId>jacoco-maven-plugin</artifactId> 
      <version>0.7.7.201606060606</version> 
      <executions> 
       <execution> 
        <goals> 
         <goal>prepare-agent</goal> 
        </goals> 
       </execution> 
       <execution> 
        <id>report</id> 
        <phase>prepare-package</phase> 
        <goals> 
         <goal>report</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 

後生成項目,爲代碼覆蓋率菜單項的菜單項出現時用鼠標右鍵單擊該項目。

Netbeans Code Coverage Menu

最後,你可以從菜單中選擇顯示報告。一切都被描述爲here

0

這個不幸的小記錄,但對我來說,菜單項出現的時候我的手加入JaCoCo Maven插件:

<plugin> 
    <groupId>org.jacoco</groupId> 
    <artifactId>jacoco-maven-plugin</artifactId> 
    <version>0.7.7.201606060606</version> 
    <executions> 
     <execution> 
      <id>default-prepare-agent</id> 
      <goals> 
       <goal>prepare-agent</goal> 
      </goals> 
     </execution> 
     <execution> 
      <id>default-report</id> 
      <phase>prepare-package</phase> 
      <goals> 
       <goal>report</goal> 
      </goals> 
     </execution> 
     <execution> 
      <id>default-check</id> 
      <goals> 
       <goal>check</goal> 
      </goals> 
      <configuration> 
       <rules><!-- implementation is needed only for Maven 2 --> 
        <rule implementation="org.jacoco.maven.RuleConfiguration"> 
         <element>BUNDLE</element> 
         <limits><!-- implementation is needed only for Maven 2 --> 
          <limit implementation="org.jacoco.report.check.Limit"> 
           <counter>COMPLEXITY</counter> 
           <value>COVEREDRATIO</value> 
           <minimum>0.01</minimum> 
          </limit> 
         </limits> 
        </rule> 
       </rules> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

Maven的目標verify運行覆蓋報告。正如您在官方文檔中提到的那樣,您還可以獲得覆蓋範圍。

不幸的是,插件或集成似乎有點小錯誤,因爲您可以運行測試並在測試結果NB窗口中查看其結果,或者查看覆蓋率......似乎有兩種運行測試的方法,我還沒有找到同時完成這兩項任務的方法。