I have heard writing tests is a good starting point for contributing to Bitcoin Core. How do I work out which parts or specific lines of the codebase need additional test coverage?
If your intention is to contribute to Bitcoin Core, you must be able to build these reports locally. So that you can compare if your changes have been effective at increasing coverage.
The general steps are:
- Download the code and compile it
- Install LCOV for report generation
- Configure bitcoin to enable line coverage, ie
- Execute the coverage task, ie
Once you have the dev environment correctly setup, the commands are:
./configure --enable-lcov make cov
The official docs are located here: developer-notes.md#compiling-for-test-coverage