GAIO CLUB
EXPECT_LT(0,function3_2(5)); // 0が、関数function3_2(5)の戻り値未満であることを期待している
EXPECT_EQ(25,glb3); // 25 == glb3 であることを期待している
TEST(テストケース名, テスト名) { アサーション記述などのテストコード }
TEST(Func32,TEST1) {
EXPECT_LT(0,function3_2(5)); // 0が、関数function3_2(5) 戻り値未満であること
EXPECT_EQ(25,glb3); // 25 == glb3 になっていること
}
[----------] 1 test from Func32
[ RUN ] Func32.TEST1
[ OK ] Func32.TEST1 (0 ms)
[----------] 1 test from Func32 (0 ms total)
[----------] 1 test from Func32
[ RUN ] Func32.TEST1
sample.cpp:30: Failure
Expected equality of these values:
5
glb3
Which is: 25
[ FAILED ] Func32.TEST1 (0 ms)
[----------] 1 test from Func32 (0 ms total)
[----------] 1 test from Func32
[ RUN ] Func32.TEST1
sample.cpp:35: Failure
Expected: (0) < (function3_2(-5)), actual: 0 vs 0
[ FAILED ] Func32.TEST1 (0 ms)
[----------] 1 test from Func32 (0 ms total)
#include <gtest/gtest.h>
int glb3;
// Test Target : function3_2 // テストターゲット関数
int function3_2(int a){
if ( a > 0 )
{
glb3 = a*a;
return a;
}
else
return 0;
}
int main(int argc, char **argv) // main関数
{
// Initialize for Google Test
::testing::InitGoogleTest(&argc, argv); // コマンドフラグを使用することができる
// Test All
return RUN_ALL_TESTS(); // 全てのテストが動作する
}
// Test for OK
TEST(Func32, TEST1){ // テストケース名(Func32):テスト名(TEST1)
EXPECT_LT(0, function3_2(5));
EXPECT_EQ(5*5, glb3);
}
// Test for NG 1
TEST(Func32, TEST2){ // テストケース名(Func32):テスト名(TEST2)
EXPECT_LT(0, function3_2(5));
EXPECT_EQ(5, glb3);
}
// Test for NG 2
TEST(Func32, TEST3){ // テストケース名(Func32):テスト名(TEST3)
EXPECT_LT(0, function3_2(-5));
EXPECT_EQ(5*5, glb3);
}
[==========] Running 3 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 3 tests from Func32
[ RUN ] Func32.TEST1
[ OK ] Func32.TEST1 (0 ms)
[ RUN ] Func32.TEST2
sample.cpp:30: Failure
Expected equality of these values:
5
glb3
Which is: 25
[ FAILED ] Func32.TEST2 (0 ms)
[ RUN ] Func32.TEST3
sample.cpp:35: Failure
Expected: (0) < (function3_2(-5)), actual: 0 vs 0
[ FAILED ] Func32.TEST3 (0 ms)
[----------] 3 tests from Func32 (0 ms total)
[----------] Global test environment tear-down
[==========] 3 tests from 1 test suite ran. (0 ms total)
[ PASSED ] 1 test.
[ FAILED ] 2 tests, listed below:
[ FAILED ] Func32.TEST2
[ FAILED ] Func32.TEST3
2 FAILED TESTS
浅野 昌尚(あさの まさなお)
ガイオ・テクノロジー株式会社
開発1部 QTXグループ
1980年代から30年以上にわたり汎用構造のCコンパイラ開発に従事し、その間に8ビットマイコンからRISC・VLIW・画像処理プロセッサまで、さまざまなCPU向けのクロスCコンパイラを開発。