mogmo .NET

C#/XAML/VB6たまにC++についてメモ程度に書いていく。あくまで自分用。責任は取れません。

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 Mock:はじめの一歩 (1/2):CodeZine(コードジン)

Google Test プロジェクトテンプレートを使えるようにする

Visual Studio Installer を起動して、[C++ によるデスクトップ開発]の[Test Adapter for Google Test]にチェックをつけてインストールする。
f:id:mogmo811:20201113094701j:plain
参考:docs.microsoft.com

Google Testプロジェクトテンプレートを使って新規プロジェクトを作成する

Visual Studio 2019を起動して、[Google Test]を選択し、[次へ]をクリックする。
f:id:mogmo811:20201113094905j:plain

プロジェクト構成を設定して、[作成]をクリックする。
私の場合、プロジェクト名は「テストするプロジェクト名 + "Test"」とすることが多い

Google MockをNuGetパッケージからインストールする

[ソリューション エクスプローラ]から先ほど追加したテストプロジェクトの[参照]を右クリックし、コンテキストメニューから[NuGetパッケージの管理]をクリックして[Nuget: (プロジェクト名)]タブを開く。
[参照]タブで"googlemock"を検索し、ライブラリをダウンロードする。
今回は 「googlemock.v140.windesktop.static.rt-dyn」の安定版「Ver. 1.7.0.1」をインストールした。
インストール後の[Nuget: (プロジェクト名)]タブの[インストール済み]タブは下のような画面になる。
f:id:mogmo811:20201113095357j:plain

フォルダ名を変更する

googlemock.v140.windesktop.static.rt-dyn の場合、パッケージのincludeディレクトリの直下のフォルダ名が「gtest」になっているので、「gmock」に変更する。

gtest.hとgmock.hをインクルードする

テストプロジェクトのcppファイルに下の 2 行を追加してビルドが通れば導入準備は完了です٩(ˊᗜˋ*)و

#include "gtest/gtest.h"
#include "gmock/gmock.h"

参考サイト

opencv.jp
qiita.com



ではまた🍙