回答
有沒有來生成代碼覆蓋率報告爲添加到類路徑罐子應該有能力?
。你是不是告訴你正在使用它,雖然代碼覆蓋工具,我曾與Cobertura和JaCoCo
代碼覆蓋率一般經歷3個階段:
- 儀表:您針對編譯的類運行代碼覆蓋率工具,該工具創建類的檢測版本。從概念上講,插裝類在每一行增加一個計數器都有代碼注入。這是如何跟蹤哪條線被訪問過。
- 代碼執行工具類:代碼運行,計數器收集哪些行已被訪問。
- 舉報:讀取計數器收集的數據並用於生成代碼覆蓋率報告。在此階段,您需要源代碼,以便代碼覆蓋率工具可以將代碼覆蓋率結果與實際來源相匹配。
在您的場景中,您可以做的是解壓縮您希望代碼覆蓋的JAR,然後將這些類壓縮到另一個JAR中。用儀表類替換原始JAR和JAR。
這是一個非標準的工作流程,不得在螞蟻/ Maven的輕鬆配置,但是你可以按照如下手工進行:
- Cobertura在nice documentation on how to run it from the command line
- 您可以以編程方式使用JaCoCo,請參閱API和API examples
我認爲你可以定製你自己這樣一個解決方案:
- 你做你的「覆蓋數據收集」
- 您export的,結果;例如成CSV數據
- 你寫的代碼,做一點點獲得所有類的名稱/任何JAR檔案包
- 然後你只需提取你產生:使用步驟3 CSV文件中的行
給出您的評論:似乎你不明白「報道」爲你做了什麼。重點是:你啓動一個JVM; JVM 運行一些代碼。雖然如此,數據收集關於被使用的類/方法,採取的路徑等
換句話說:
- 您驅動的JVM運行的東西
- 覆蓋率框架做筆記其中代碼路徑採取
沒有在該進程中涉及特定 JAR文件。覆蓋範圍只檢查其中代碼正在運行。這映射「,其中的代碼是從來是不同方面。
對不起,也許問題不夠清楚。我可以爲已編譯的jar創建覆蓋率報告嗎? –
@AndriiAbramov是的,你可以 – Godin
@GhostCat,謝謝,絕對是upvote。但是,恩格索爾斯的答案更爲詳細,完全適用於我的情況。 –
- 1. rt jar中ArrayList的代碼覆蓋率?
- 2. 代碼覆蓋率:.NET代碼覆蓋率和SonarQube VSTS集成
- 3. 聲納代碼覆蓋率:%代碼覆蓋率不一致
- 4. rspec的代碼覆蓋率
- 5. PHPUnitSeleniumTestcase的代碼覆蓋率
- 6. 代碼覆蓋率 - 哪個代碼覆蓋哪個代碼?
- 7. 差代碼覆蓋率
- 8. PHPUnit代碼覆蓋率0%
- 9. 代碼覆蓋率與SCCT
- 10. ESB代碼覆蓋率
- 11. 全部代碼覆蓋率
- 12. Xcode 8代碼覆蓋率
- 13. 代碼覆蓋率分析
- 14. 爲Perl代碼覆蓋率
- 15. TDD和代碼覆蓋率
- 16. 代碼覆蓋率爲Android
- 17. CoffeeScript代碼覆蓋率
- 18. PHPUnit代碼覆蓋率
- 19. MSTest代碼覆蓋率
- 20. Jacoco代碼覆蓋率
- 21. XCode - 代碼覆蓋率?
- 22. Python代碼覆蓋率
- 23. 代碼覆蓋率統計
- 24. Appium iOS代碼覆蓋率
- 25. Grails 3代碼覆蓋率
- 26. Android gradle構建robolectric測試的代碼覆蓋率
- 27. 代碼覆蓋率/分支覆蓋建議值
- 28. PHPUnit代碼覆蓋率顯示單元測試的代碼覆蓋率?
- 29. TFS 2010 RC:如何爲低代碼覆蓋率構建失敗?
- 30. Xcode 7代碼覆蓋率 - 無覆蓋率數據
在JaCoCo的情況下,你不需要解壓縮和儀器類文件 - JaCoCo代理(http://www.jacoco.org/jacoco/trunk/doc/agent。 HTML)儀器類即時。 – Godin