2012-02-14 66 views
1

我需要以編程方式檢測方法的代碼行,以便通過特定的執行我可以知道哪些線被觸及或不是 - 我想要在行號之間有一個映射,並且它們是否是是否運行。方法的檢測線

到目前爲止,我一直在使用JaCoCo來執行此儀器。但JaCoCo儀器整個班,我想控制什麼方法儀器。

我可以使用庫如ASMBCELjavassist來做到這一點嗎?如果是這樣,任何人都可以指向我的一些文檔或教程?

+0

所以,你想能夠爲您的班級的一些方法轉向儀器? – 2012-02-14 19:11:46

+0

你有沒有想過使用cobertura,這本來就是這樣做的? – 2012-02-14 19:14:23

+0

@RogerLindsjö是的,我想轉換一些方法的儀器,這有可能嗎?我也希望能夠知道每條語句的行號,以便我可以填寫該地圖。 – aperez 2012-02-14 19:16:39

回答

1

你可以看看Cobertura source code(它本身使用ASM)。這不是教程,但另一方面,它是一個真實世界的例子,而不是玩具。

0

有許多代碼覆蓋工具,許多都有IDE集成,因此您可以通過運行該程序輕鬆生成這些報告。您也可以使用maven生成報告。

最簡單的解決方案是找到一個開源的代碼覆蓋工具,它可以實現您想要的功能並對其進行增強,也許該工具的開發人員將會對您進行改進。

這是一個十三個封面報道相關工具的列表,讓你開始。 http://www.java-sources.com/open-source/code-coverage