Windowsでのカバレッジ測定
OpenCppCoverageを使ってみた(2)

2021年1月30日

どもです。
前回のエントリーで、OpenCppCoverageというカバレッジを測定する、フリーのツールを紹介しました。
その際に、ツールの「惜しいところ」ということで「日本語が文字化けする」ということを書きました。
調べてみると、これを解決(解消?)する方法があることが分かりました。
そこで今回は、この「解決(解消?)」の方法について書きます。

1.解決方法

OpenCppCoverageは、コマンドライン上で実行するツールとは別に、VisualStudioのプラグインが公開されています。
このプラグインを適用することで、VisualStudio上でOpenCppCoverageを実行し、VisualStudioのエディタ上に結果を表示できるようになります。
したがって、「日本語が文字化けする」ことなく、カバレッジを表示できるようになります。

なお、今回のエントリでは、以下の環境で作業を行っています。

CPU i7-8700 CPU 3.20GHz
メモリ 16.0GB
OS Windows 10 Pro
バージョン:1903
IDE Visual StudioCommunity 2019
Version 16.3.9

2.ツールの入手

VisualStudioのMarketPlaceからインストーラを取得します。
画面上の「Download」ボタンをクリックすると、インストーラが取得できます。
OpenCppCoverage(2)_001_download

3.インストール

ダウンロード後、ファイルをダブルクリックしてインストールします。
OpenCppCoverage(2)_002_install
これで、インストールは完了です。

4.実行

インストールが完了したら、単体テストのプロジェクトをVisualStudioで起動します。
起動後、単体テストプロジェクトにおいて、OpenCppCoveragePluginの設定を行います。
ソリューションエクスプローラで右クリックして、コンテキストメニューから「OpenCppCoverage Settings」を選択します。
OpenCppCoverage(2)_003_open_setting_dialog

表示された「Settings」ダイアログにおいて、各種設定を行います。
まず、「Selected Porjects:」において、単体テストのプロジェクトのチェックを有効にします。
次に、「Program to run:」に、単体テストの実行ファイルのパスを設定します。
設定が完了したら、画面右下の「Run Coverage」をクリックします。
OpenCppCoverage(2)_004_settings
すると、単体テストが実行されます。

5.結果の確認

単体テスト実行後、テスト対象の任意のファイルを開くと、テストされている/されていないパスが、それぞれ色付けされた状態で表示されます。
このとき、日本語も文字化けすることなく表示されます。
OpenCppCoverage(2)_005_result_in_code
また、各ファイルのカバレッジについても、確認することができます。
OpenCppCoverage(2)_006_result

6.まとめ

今回は、前回のエントリで挙げた課題の1つである「文字化け」について解決する方法を記載しました。
これにより、テストされている/されていないパスを、文字化けすることなく確認ができるようになります。
文字化けがないと、やっぱりコードが見易いですね。

今回のエントリでは、VisualStudioにOpenCppCoverageのプラグインを導入することで、「日本語の文字化け」を解決する方法について記載しました。
プラグインの導入により、コマンドラインを起動して、OpenCppCoverageを実行して、結果を確認して、という一連の手順まで全てVisualStudio上で実行できるようになりました。
結果の出力についても、設定画面の「Import/Export」タブの「ExportTypePath」を設定することで、実行と同時に出力できるようになります。
しかし、出力されるレポート(HTML形式)では、文字化けは解決できていませんでした。
やっぱり、最終的なレポートの出力については、OpenCppCoverage本体の更新に期待するしかないのかなぁ…。

ではっ!