HomePhabricator

Support gathering of code coverage data for RPC tests
d80e3cbece85Unpublished

Unpublished Commit ยท Learn More

Repository Importing: This repository is still importing.

Description

Support gathering of code coverage data for RPC tests

The RPC tests (via qa/pull-tester/rpc-tests.py) are now executed,
when gathering code coverage data, for example with make cov.

Generating coverage data requires lcov, which can installed with:

sudo apt-get install lcov

To also use the BitcoinJ tests, get the test tool:

TOOL_URL=https://github.com/theuni/bitcoind-comparisontool/raw/master/pull-tests-8c6666f.jar
TOOL_HASH=a865332b3827abcde684ab79f5f43c083b0b6a4c97ff5508c79f29fee24f11cd
wget $TOOL_URL -O ./share/BitcoindComparisonTool.jar
echo "$TOOL_HASH  ./share/BitcoindComparisonTool.jar" | shasum --algorithm 256 --check

The coverage data can be generated with:

./autogen.sh
./configure --enable-lcov --with-comparison-tool=./share/BitcoindComparisonTool.jar
make
make cov

Optionally the options --enable-extended-rpc-tests and
--enable-comparison-tool-reorg-tests may be used to enable more time
consuming tests.

It then runs the tests and generates two HTML reports:

  • test_bitcoin.coverage/index.html
  • total.coverage/index.html

Details

Provenance
dexX7Authored on Oct 11 2015, 16:29
deadalnixPushed on May 14 2017, 22:04
Parents
rABCe3b5e6c39c5a: Run extended BitcoinJ tests for coverage based on config
Branches
Unknown
Tags
Unknown

Event Timeline