Bitcoin-Core-Development
如何分析比特幣核心程式碼庫的測試覆蓋率?
我聽說編寫測試是為 Bitcoin Core 做出貢獻的一個很好的起點。如何確定程式碼庫的哪些部分或特定行需要額外的測試覆蓋?
Marco Falke 有一個網站,可以分析單元測試、功能測試和模糊測試的目前行、功能和分支覆蓋率。
或者,vasild 執行 clang 的工具,然後執行一個腳本來突出顯示覆蓋報告中的哪些行已被特定更新檔 (PR) 修改。
如果您打算為 Bitcoin Core 做出貢獻,您必須能夠在本地建構這些報告。這樣您就可以比較您的更改是否有效地增加了覆蓋率。
一般步驟是:
- 下載程式碼並編譯
- 安裝 LCOV 以生成報告
- 配置比特幣啟用線路覆蓋,即
--enable-lcov
- 執行覆蓋任務,即
make cov
正確設置開發環境後,命令為:
./configure --enable-lcov make cov