The PostgreSQL source code can be compiled with coverage testing
instrumentation, so that it becomes possible to examine which
parts of the code are covered by the regression tests or any other
test suite that is run with the code. This is currently supported
when compiling with GCC, and it requires the <literal>gcov</literal>
and <literal>lcov</literal> packages.
PostgreSQLソースコードは、カバレッジテストツールとともにコンパイルすることができるため、リグレッションテスト、あるいはその他のテストスイートによって、コードのどの部分が網羅されているかを評価することができます。
これは現在、GCCを使用してコンパイルした時にサポートされ、gcov
およびlcov
パッケージを必要とします。
A typical workflow looks like this: 典型的な作業の流れは以下のようになります。
./configure --enable-coverage ... OTHER OPTIONS ... make make check # or other test suite make coverage-html
Then point your HTML browser
to <filename>coverage/index.html</filename>.
そして、HTMLブラウザでcoverage/index.html
を参照します。
If you don't have <command>lcov</command> or prefer text output over an
HTML report, you can run
lcov
がない、あるいは、HTMLレポートよりもテキスト出力を好むなら、以下を実行してください。
make coverage
instead of <literal>make coverage-html</literal>, which will
produce <filename>.gcov</filename> output files for each source file
relevant to the test. (<literal>make coverage</literal> and <literal>make
coverage-html</literal> will overwrite each other's files, so mixing them
might be confusing.)
make coverage-html
の代わりに、これはテストに関連する各ソースファイルに対して.gcov
出力ファイルを生成します。
(make coverage
とmake coverage-html
は互いのファイルを上書きしますので、混用は混乱をひき起こすかもしれません)
You can run several different tests before making the coverage report; the execution counts will accumulate. If you want to reset the execution counts between test runs, run: カバレッジレポートを作成する前に複数の異なるテストを実行できます。実行カウントは累積されます。 実行カウントをテストの間でリセットしたければ、以下を実行してください。
make coverage-clean
You can run the <literal>make coverage-html</literal> or <literal>make
coverage</literal> command in a subdirectory if you want a coverage
report for only a portion of the code tree.
コードツリーの一部だけのカバレッジレポートが必要ならば、make coverage-html
あるいはmake coverage
コマンドをそのサブディレクトリで実行することができます。
Use <literal>make distclean</literal> to clean up when done.
終了後に結果を削除するにはmake distclean
を実行します。
A typical workflow looks like this: 典型的な作業の流れは以下のようになります。
meson setup -Db_coverage=true ... OTHER OPTIONS ... builddir/ meson compile -C builddir/ meson test -C builddir/ cd builddir/ ninja coverage-html
Then point your HTML browser
to <filename>./meson-logs/coveragereport/index.html</filename>.
次に、HTMLブラウザで./meson-logs/coveragereport/index.html
を指定します。
You can run several different tests before making the coverage report; the execution counts will accumulate. カバレッジレポートを作成する前に複数の異なるテストを実行できます。実行回数は累積されます。