1. 簡介
開源工具 OpenCover 是.net平台下用於生成單元測試覆蓋率報告的一款軟件,是.net平台下為數不多的一款免費覆蓋率報告工具,類似的工具還有Jetbrains的dotcover以及VisualStudio自帶的單元測試覆蓋率工具,dotcover是付費軟件,visualStudio自帶的單元測試覆蓋率報告工具僅限於在VisualStudio中使用,無法與Jenkins結合實現自動化,並且它只集成在企業版里面,社區版里是沒有這個功能的.
OpenCover生成的結果是xml格式的,不夠直觀,需要用工具轉化為比如html格式進行分析.這里使用 ReportGenerator.

2.安裝
2.1下載地址
OpenCover 下載地址
這里下載的版本是:


2.3 UI版本OpenCover
2.4 ReportGenerator安裝
安裝過程參考: 博客地址 這里做個備份
在vs的操作:
Tools->NuGet Package Manager->Manager NuGet Packages for Solution…
中文版的:
工具->NuGet 包管理->管理解決方案的NuGet包…



3. 使用
3.1 OpenCover使用方法
在圖3. OpenCover 安裝后的命令行工具 中輸入命令
OpenCover.Console.exe -target:"E:\workSpace\codes\Debug\Server\Server.exe" -output:"E:\workSpace\software\c2.xml" -targetdir:"E:\workSpace\codes\Debug\Server"
其中:
- 參數 -target 指向被分析軟件的位置.
- 參數 -output 指定分析結果的文件名.
- 參數 -targetdir 指定 被分析軟件的文件夾.
輸入參數之后,按Enter就可以啟動被分析程序,程序啟動后對程序進行邏輯覆蓋.完成覆蓋后關閉被分析程序.等待十幾秒會產生初步概覽和c2.xml文件

3.2 ReportGenerator使用方法
打開命令行工具執行
E:\workSpace\codes\oldserver\packages\ReportGenerator.4.8.6\tools\net47\ReportGenerator.exe -reports:"E:\workSpace\software\c2.xml" -targetdir:"E:\workSpace\software\coverage"
- 參數 -reports 是 OpenCover 工具生成結果文件存放的位置.
- 參數 -targetdir 指定ReportGenerator結果生成的位置.
生成后到E:\workSpace\software\coverage文件夾下找到index.html文件用瀏覽器打開即可.效果如下



