Bitcoin-Core-Development

編寫單元測試是開始為比特幣核心做出貢獻的好方法嗎?

  • January 21, 2022

我正在考慮為比特幣核心編寫單元測試,作為 C++ 開發和比特幣貢獻的第一步。有人對我即將開始的旅程以及可能需要測試的文件有任何建議嗎?

直接跳到編寫單元測試可能很難,我建議你查看官方 github 頁面,了解如何為比特幣核心做出貢獻:

<https://github.com/bitcoin/bitcoin/blob/master/CONTRIBUTING.md>

如果我想做出貢獻,我會親自嘗試解決他們問題頁面上的一些問題,因為它是新鮮的,有很多工作,有些可能很容易並且總是需要幫助:

<https://github.com/bitcoin/bitcoin/issues>

如果您從頭開始學習 C++,即使您發現缺少特定的單元測試,您也可能難以開始編寫單元測試。所以這是一個挑戰。

在發現缺少的單元測試來編寫方面,有多種方法可以做到這一點。值得關注GitHub 儲存庫上的良好的第一個問題,儘管我認為這將依賴於 PR 作者故意不編寫單元測試並將其作為一個良好的第一個問題。

或者,您可以查看 Marco Falke網站上的單元測試覆蓋率,以查看哪些文件的單元測試覆蓋率較低。

一個有用的案例研究是 Fabian Jahr 對 Core 的第一個貢獻,這是一個簡單的程式碼更改,這意味著 MacOS 使用者跳過了在 MacOS 上不穩定的功能測試。他在 Bitcoin Edge Dev++ 2019 上就比特幣核心功能測試框架調試比特幣核心做了幾場精彩的演講。

不過,您的時間最有成效的利用可能是參加由 John Newbery 設立的每週比特幣核心公關評論俱樂部。每週都會選擇不同的 PR,在此期間,您可以詢問為特定 PR 編寫的測試以及是否缺少任何單元測試。你可以在##bitcoin-core-pr-reviews 參加 IRC,你可以問任何你想問的問題。新貢獻者通常是主要目標受眾。

引用自:https://bitcoin.stackexchange.com/questions/90389