📑

GoogleTestチートシート(一部)

2020/09/27に公開

※この記事は、Qiitaに投稿した記事を一部変更したものです。
https://qiita.com/kunosu/items/656ae92009fcf452470c


GoogleTestの公式チートシートから、よく使うものを記載した。
今後増やす予定。

※ここでは引数の数を 0 から数える。

ポインタ系はこちら→ https://zenn.dev/kunosu/articles/09425558fd10013f42a9

出力チェック

値の比較

成功条件 書き方
expected == actual EXPECT_EQ(expected, actual)
expected != actual EXPECT_NE(expected, actual)
expected < actual EXPECT_LT(expected, actual)
expected <= actual EXPECT_LE(expected, actual)
expected > actual EXPECT_GT(expected, actual)
expected => actual EXPECT_GE(expected, actual)

簡単なスタブを作る

Action を定義する

ACTION(Sum) {
	return (arg0 + arg1);  // モック関数の0番目と1番目の引数の合計を返す
}

ACTION_P(Plus, n) {
	return (arg0 + n);  // モック関数の0番目の引数と n との和を返す
}

使い方

EXPECT_CALL(*mock, func(_,_)).WillOnce(Sum);
EXPECT_CALL(*mock, func(_,_)).WillOnce(Plus(10));

テストを一時的に無効にする

テストフィクスチャ名に "DISABLED_" をつける。
※テストが実行されなくなるが、ビルドはされる

// TEST_F(xxTestFixture, successTest) {
TEST_F(DISABLED_xxTestFixture, successTest) {
	// ここのテストが実行されなくなる

typedefで無効用のテストフィクスチャを作ってもいい。

typedef xxTestFixture DISABLED_xxTestFixture;

TEST_F(xxTestFixture, successTest) {
	// ここのテストが実行されなくなる

無効中は、テストの実行結果の最後に "YOU HAVE 1 DISABLED TEST" と表示される。

Discussion