LoginSignup
5
3

More than 3 years have passed since last update.

Google Testのテストケース名やテスト名にアンダースコアを使用してはいけない

Last updated at Posted at 2019-07-30

題名そのままです。

最近単体テストの記事を見てGoogleTestの入門ガイドなんかを眺めていたとき...

入門ガイド

TEST() の引数は,全体そして詳細,の順序に並んでいます.
最初の引数は,テストケースの名前です.
2番目の引数は,テストケースに含まれるテストの名前です.
両者とも有効な C++ の識別子でなければならず,アンダースコア(_)を含んではいけません.
テストケースと個々のテスト名を合わせたものが,テストの完全な名前となります.
属するテストケースが別ならば,個々のテスト名として同じ名前を付けることもできます.

とあり驚きました。
c++erの人はアンダースコア大好きだと思っているので(しらんけど)

自分もアンダースコアで命名することが多く、実際試しに書いていたテストもがっつりアンダースコア使ってました。

アンダースコアを使用してはいけない理由は

ここにあります。
githubのリポジトリにもあります。

GoogleTest界隈では常識なのかもしれないですが初めて知ったので記事にしました。

ちなみに、GoogleTestを使用しているとGoogleTestのREADME.mdにも書かれているヘッダーオンリーディープラーニングライブラリのtiny_dnnはアンダースコアを使用しています。
リポジトリ

追記:どうでもいい情報

現在GoogleTestを使用してないと思われます。
Catch2とかいうイカしたヘッダーオンリーライブラリを使用しているっぽいです。
過去のリリースではGoogleTest使用しています。アンダースコアつきで...

5
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3