WSLにgoogleTestをインストール!!

以前の投稿からずいぶん期間が空いてしまいました。
最近開発で単体テストツールとしてgoogleTestを使用する機会があったので
WSL(Windows Subsystem for Linux)にインストールしてみました。
この記事は以下のような方におすすめです。
- googleTestをインストールして使ってみたい
- googleTestの環境構築をWSLで構築したい
インストールしようと思った背景
googleTestをインストールしようと思った背景は、仕事の開発で単体テストの時に使う機会があり
無料のツールですが非常に充実したものだったので、Windowsで簡単にLinux環境が使用できるように
なったこともあり、勉強も兼ねてインストールしてみました。
以下にインストール手順を紹介します。
googleTestインストール
ステップ1:ダウンロード
まずはgoogleTestをGitHubからダウンロードします。
任意のディレクトリを作成してダウンロードしてきましょう。(管理人直下にダウンロードしました。)
コマンドは以下です。
wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz
ダウンロードが完了したらtarコマンドを使ってダウンロードしたtar.gzファイルを解凍します。
解凍が完了するとgoogletest-release-1.8.0というディレクトリが作成されます。
ステップ2:インストール
作成されたgoogletest-release-1.8.0に移動し以下のコマンドを実行します。
mkdir build
cd build
cmake ..
sudo make && sudo make install
makeするにあたってはあらかじめcmake、g++またはgccのインストールが必要です。
インストールしていない方はインストールしておきましょう。
sudo apt install cmake
sudo apt install g++
sudo apt install gcc
インストールに成功した場合は/usr/local/libに以下のライブラリが作られているはずです。
libgmock.a libgmock_main.a libgtest.a libgtest_main.a
環境のセットアップ
ステップ1:makefileの作成
次に環境のセットアップを行っていきます。
以下のディレクトリ構成でgooogleTest用のMakefileを作成します。
─── HelloWorld
├── Calculation.o
├── Hello.exe
├── Makefile
├── include
│ ├── Calculation.hpp
├── main.o
├── src
│ ├── Calculation.cpp
│ └── main.cpp
└── test
├── Makefile
├── Test.exe
├── TestHelloWold.o
├── TestHelloWorld.o
├── main.o
└── src
├── TestHelloWorld.cpp
└── main.cpp
makefileは以下のようにしてみました。
TestHelloWold.cpp, main.cppの中身は以下のようになっています。
ステップ2:googleTestの実行
makeを実行して作成されたtest.exeを実行するとテストが実行されます。
先ほどのTestHelloWold.cppにテストケースを追加していくだけで自動でテストも追加されます。
テストが成功、失敗した際の表示はそれぞれ以下となります。


最後に
googleTestを使えば単体テストも気軽に行うことができます。
ここで紹介した以外にも様々なオプションやアサーションが用意されていて
無料とは思えないほど充実しています。
皆さんもgoogleTestを使って快適な単体テストライフを過ごしてください。
googleMockの使用法やここでは紹介できなかったアサーション等を
また別の機会に紹介できればと思います。
それではまた次の記事でお会いしましょう。
管理人オススメ単体テスト勉強コンテンツ
オススメの本
こちらはプログラミングが初めての方や初心者の方にオススメです。
オススメ動画コンテンツ
勉強しやすいように税込み1万円以内でよさげな動画コンテンツをピックアップしてみました、
購入して勉強や開発に役立ててください。

こちらはKotlinとJUnitとなっていますが、丁寧な解説で単体テストの本質を学ぶことができます。
金額は税込7,200円です。

こちらは管理人も開発でよく使用しているC#での単体テストについて学べます。
正確にいうと開発手法の1つについてなのですが知っていて損はない内容なので
オススメの動画です。
金額は税込5,400円です。
