PostgreSQLソースコードは、カバレッジテストツールとともにコンパイルすることができるため、リグレッションテスト、あるいはその他のテストスイートによって、コードのどの部分が網羅されているかを評価することができます。
これは現在、GCCを使用してコンパイルした時にサポートされ、gcov
およびlcov
プログラムを必要とします。
典型的な作業の流れは以下のようになります。
./configure --enable-coverage ... OTHER OPTIONS ... make make check # or other test suite make coverage-html
そして、HTMLブラウザでcoverage/index.html
を参照します。
gmake
コマンドはサブディレクトリ内においても同様に動作します。
lcov
が無い、あるいは、HTMLレポートよりもテキスト出力を好むなら、make coverage-html
の代わりに以下を実行してください。
make coverage
これはテストに関連する各ソースファイルに対して.gcov
出力ファイルを生成します。
(make coverage
とmake coverage-html
は互いのファイルを上書きしますので、混用は混乱をひき起こすかもしれません)
複数回の試験を実行する時、実行回数をリセットするためには以下を実行します。
make coverage-clean