2012-11-14 187 views
10

我目前使用Clover來測量我的Java代碼的代碼覆蓋率。一個功能,我靠的就是從覆蓋報告中排除的代碼中的任意部分的能力:支持源代碼行排除的Java代碼覆蓋工具

///CLOVER:OFF because this case is simpler to verify by code read 
if (lFile.isFile() && 
    lFile.getName().endsWith(FILE_EXTN) && 
    !lFile.delete()) 
{ 
    throw new IOException("delete() failed for: " + lFile); 
} 
///CLOVER:ON 

我覺得這種排斥使得它更容易把重點放在測試有趣的邏輯,同時仍實現100%的代碼覆蓋率。

是否有任何其他支持這種細粒度排除的Java代碼覆蓋工具(免費或付費)?全班或全部排除方法不夠好。

注:我目前正在調查添加適合JaCoCo的東西(Issue #14)。

+1

EMMA可能在未來加入類似的支持;比照http://emma.sourceforge.net/faq.html *「允許EMMA用戶將任意方法標記爲排除覆蓋範圍的功能正在考慮用於將來的版本。」* –

+2

不幸的是,自從最近的EMMA版本從2005年。但是,感謝您的鏈接。 – mchr

+1

看不清楚爲什麼這個已關閉。這個問題客觀上是可以回答的。 – AHungerArtist

回答

1

從我的經驗,下面的所有工作得很好:

  • 在閉源方面:三葉草
  • 在開源方面:Cobetura(但不與Java 7的工作),EMMA