nlib
|
C++のコードをテストするためのフレームワークです。testingライブラリの機能一覧 の説明も御覧ください。 [詳解]
クラス | |
class | Environment |
このクラスを継承してグローバルに実行されるSetUp() とTearDown() を定義します。 [詳解] | |
関数 | |
void | InitNintendoTest (int *argc, char **argv) |
テストプログラムのコマンドラインオプションを処理します。 | |
void | InitNintendoTest (int *argc, wchar_t **argv) |
テストプログラムのコマンドラインオプションを処理します。 | |
Environment * | AddGlobalTestEnvironment (Environment *env) |
Environment へのポインタを渡して、全てのテストの前と後に実行されるコードを登録します。 | |
AssertionResult | FloatLE (const char *expr1, const char *expr2, float val1, float val2) |
val1 <= val2 を検証します。[ASSERT|EXPECT]_PRED_FORMAT2 に組み込んで利用します。 [詳解] | |
AssertionResult | DoubleLE (const char *expr1, const char *expr2, double val1, double val2) |
val1 <= val2 を検証します。[ASSERT|EXPECT]_PRED_FORMAT2 に組み込んで利用します。 [詳解] | |
C++のコードをテストするためのフレームワークです。testingライブラリの機能一覧 の説明も御覧ください。
addTest
メソッドを使って明示的に登録する必要がない) operator<<
を用いた簡便なユーザー定義の失敗メッセージの記述(ex. ASSERT_EQ(5, Foo(i)) << ” where i = ” << i;)のサポート testing
ライブラリは、Google Testとマクロ名や関数名等である程度の互換性があり、Google Testを用いて書かれたテストコードをコンパイルできるように実装されています。std::ostream
がサポートされていない環境や、main関数の前にnewを呼ぶことができない環境でも利用することができます。testing
ライブラリには以下のマクロが実装されています。 RUN_ALL_TESTS()
TEST()
, TEST_F()
TEST_P()
, INSTANTIATE_TEST_CASE_P()
TYPED_TEST_CASE()
, TYPED_TEST()
FRIEND_TEST()
FAIL()
, SUCCEED()
ASSERT_TRUE()
, ASSERT_FALSE()
, EXPECT_TRUE()
, EXPECT_FALSE()
ASSERT_EQ()
, ASSERT_NE()
, EXPECT_EQ()
, EXPECT_NE()
ASSERT_LT()
, ASSERT_LE()
, EXPECT_LT()
, EXPECT_LE()
ASSERT_GT()
, ASSERT_GE()
, EXPECT_GT()
, EXPECT_GE()
ASSERT_STREQ()
, ASSERT_STRNE()
, EXPECT_STREQ()
, EXPECT_STRNE()
ASSERT_STRCASEEQ()
, ASSERT_STRCASENE()
, EXPECT_STRCASEEQ()
, EXPECT_STRCASENE()
ASSERT_FLOAT_EQ()
, ASSERT_DOUBLE_EQ()
, EXPECT_FLOAT_EQ()
, EXPECT_DOUBLE_EQ()
ASSERT_NEAR()
, EXPECT_NEAR()
SCOPED_TRACE()
ASSERT_NO_FATAL_FAILURE()
, EXPECT_NO_FATAL_FAILURE()
ASSERT_PRED1()
, ASSERT_PRED_FORMAT1()
, EXPECT_PRED1()
, EXPECT_PRED_FORMAT1()
ASSERT_PRED2()
, ASSERT_PRED_FORMAT2()
, EXPECT_PRED2()
, EXPECT_PRED_FORMAT2()
ASSERT_PRED3()
, ASSERT_PRED_FORMAT3()
, EXPECT_PRED3()
, EXPECT_PRED_FORMAT3()
ASSERT_PRED4()
, ASSERT_PRED_FORMAT4()
, EXPECT_PRED4()
, EXPECT_PRED_FORMAT4()
ASSERT_PRED5()
, ASSERT_PRED_FORMAT5()
, EXPECT_PRED5()
, EXPECT_PRED_FORMAT5()
ASSERT_*
マクロが失敗すると、その関数からただちにリターンしますが、EXPECT_*
マクロが失敗した場合、引き続きその関数内のテストを実行します。 testing
ライブラリが提供するヘッダファイルをインクルードする必要があります。 NLIB_USE_GTEST
をtesting.h
のインクルード前に定義しておくと、Google TestのヘッダをインクルードしてGoogle Testを利用するようにすることができます。 ASSERT_EQ()
, EXPECT_EQ()
について、NULL
との比較を行おうとすると警告又はコンパイルエラーになる。このためASSERT_TRUE
(NULL
== val
); のようなコードを書く必要がある。 std::ostream
を利用していないので、operator<<
のオーバーロードやPrintTo()
関数を実装する場合に、std::ostream
ではなく、 NLIB_TESTING_OSTREAM()
マクロを利用する必要がある。 operator<<
で表示できるオブジェクトの種類が少ない。本物のstd::ostream
ではないので、std::endl
やマニピュレータ等は記述することができない。 GTEST_OUTPUT
環境変数) GTEST_COLOR
環境変数) GTEST_BREAK_ON_FAILURE
環境変数) GTEST_ALSO_RUN_DISABLED_TESTS
環境変数) GTEST_REPEAT
環境変数) GTEST_FILTER
環境変数) GTEST_SHUFFLE
環境変数) GTEST_RANDOM_SEED
環境変数) GTEST_PRINT_TIME
環境変数) ASSERT_DEATH
等、Deathテストは実装されていない。 © 2012-2017 Nintendo Co., Ltd. All rights reserved.