忘れないうちに殴り書きしておこうと思います。
C++ のユニットテスト用フレームワークは Google Test とか iutest とか Catch2 とか色々ありますが今回は Catch2 を使ってみることにしました。ヘッダオンリーでお手軽みたいです。
テスト用プロジェクトの作成~実行
まず公式からヘッダファイルをダウンロードしておきます。
次にテスト用のプロジェクトを作ります。「Windows コンソールアプリ」でいいでしょう。作ったら、テストしたいライブラリを使う準備をします(インクルード ディレクトリとかライブラリ ディレクトリの設定をする)。
プロジェクトの設定が終わったら、テストを書いていきます。
Test_mystring.cpp
でビルドして実行すると、テストの結果が出てくると思います。
テストエクスプローラを使いたい
一応テストができるようになりましたが、いちいちテスト用プロジェクトのビルドして実行して・・・とやるのは面倒なので、Visual Studio のテストエクスプローラ ウィンドウを使ってテスト開始~結果の確認までやりたいです。そこでまず Test Adapter for Catch2 拡張機能をインストールします。
次に .runsettings
ファイルを以下の通り作って、ソリューションのルートに置いておきます。テストを書いてあるソースのファイル名が FilenameFilter
にマッチするように名前を付けておきます。
.runsettings
そしてテストエクスプローラの「設定」→「実行設定の構成」→「runsettings ファイルの選択」からこのファイルを選択します(自動検出でもいい)。
で、ソリューションをリビルドするとテストが検出されて、テストエクスプローラ上に出てくると思います。これで、このウィンドウの「実行」ボタンをワンタッチでテストのビルド~実行~結果の確認までできるようになりました。

以上です
なんか抜けてるかもしれない。