実現したいこと
各テストに名前がつけられている中で、特定の名前のテストだけを実行したい.
TestAAA |--Test_GetXXXTest |--Test_SetXXXTest |--Test_GetYYYTest ...
方法
GoogleTestのadvanced.md内, SelectingTestの章を参照する. フィルタの指定方法も記載されている.
- gtest_filter=
*XXX*:*YYY*
: 「XXX」か「YYY」が名前に含まれるものを実行 - gtest_filter=
-*XXX*
: 「XXX」が名前に含まれないものを実行
以下は[XXX]が含まれるテストのみを実行する場合を示す.
コマンドラインから実行時に指定
--gtest_filter=*XXX*
をオプションに指定
コードにて指定
RUN_ALL_TEST()
を実行する前にフィルタを記述.
::testing::GTEST_FLAG(filter) = "*XXX*";
環境変数にて指定
export GTEST_FILTER = "*XXX*"
参考文献
googletest/advanced.md at master · google/googletest · GitHub