VS2019でGoogle TestとGoogle Mockを導入する
C++の単体テストをやりたいから、Google Testプロジェクトテンプレートを使ってテスト環境を整えてみるよ!
Google TestとGoogle Mockってなに?
Google Test | ユニットテストフレームワークの 1 種です。正式名称は、Google C++ Testing Frameworkといい、開発環境に依存しないテストができるようになります。 |
---|---|
Google Mock | モックフレームワークの 1 種です。正式名称は、Google C++ Mocking Frameworkといい、モックオブジェクトを作成できるようになることで、より柔軟なテストが可能になります。 |
Google Test プロジェクトテンプレートを使えるようにする
Visual Studio Installer を起動して、[C++ によるデスクトップ開発]の[Test Adapter for Google Test]にチェックをつけてインストールする。
参考:docs.microsoft.com
Google Testプロジェクトテンプレートを使って新規プロジェクトを作成する
Visual Studio 2019を起動して、[Google Test]を選択し、[次へ]をクリックする。
プロジェクト構成を設定して、[作成]をクリックする。
私の場合、プロジェクト名は「テストするプロジェクト名 + "Test"」とすることが多い。
Google MockをNuGetパッケージからインストールする
[ソリューション エクスプローラー]から先ほど追加したテストプロジェクトの[参照]を右クリックし、コンテキストメニューから[NuGetパッケージの管理]をクリックして[Nuget: (プロジェクト名)]タブを開く。
[参照]タブで"googlemock"を検索し、ライブラリをダウンロードする。
今回は 「googlemock.v140.windesktop.static.rt-dyn」の安定版「Ver. 1.7.0.1」をインストールした。
インストール後の[Nuget: (プロジェクト名)]タブの[インストール済み]タブは下のような画面になる。
フォルダ名を変更する
googlemock.v140.windesktop.static.rt-dyn の場合、パッケージのincludeディレクトリの直下のフォルダ名が「gtest」になっているので、「gmock」に変更する。
gtest.hとgmock.hをインクルードする
テストプロジェクトのcppファイルに下の 2 行を追加してビルドが通れば導入準備は完了です٩(ˊᗜˋ*)و
#include "gtest/gtest.h" #include "gmock/gmock.h"