1. EXPECT_EQ:预期两个值相等。如果两个值不相等,gtest会记录一个错误,但不会立即停止当前的测试。 2. EXPECT_NE:预期两个值不相等。如果两个值相等,gtest会记录一个错误,但不会立即停止当前的测试。 3. EXPECT_LT:预期第一个值小于第二个值。如果第一个值不小于第二个值,gtest会记录一个错误,但不会立...
在EXPECT_EQ中使用GTest/GMock匹配器,可以通过匹配器来进行更灵活和精确的断言。GTest/GMock是Google提供的一组C++测试框架和模拟框架,用于编写单元测试和创建模拟对象。匹配器可以用于验证预期值和实际值之间的关系,以及验证特定属性或条件是否满足。 使用GTest/GMock匹配器的语法如下: EXPECT_THAT(actual_value, match...
EXPECT_EQ(...); } 1. 2. 3. gtest的main函数隐藏在它生成的 .lib文件中。 gtest会自动收集类似 TEST{}这样的代码结构作为运行项。 不想多说了,看着sample例程学起来比较容易,程序员还是适合看代码体会式的学习^^
Negative){EXPECT_EQ(1,Factorial(-5));EXPECT_EQ(1,Factorial(-1));EXPECT_GT(Factorial(-10),0);}// 0TEST(FactorialTest,Zero){EXPECT_EQ(1,Factorial(0));}// 负数为一组TEST(FactorialTest,Positive){EXPECT_EQ(1,Factorial(1));EXPECT_EQ(2,Factorial(2));EXPECT_EQ(6,Factorial(3...
一般EXPECT_* 更常用,它可以输出测试的多个失败,常用的断言如下,包括布尔类型、整数类型、浮点类型、字符串等。 1、真假判断 EXPECT_TRUE(ret):ret == true EXPECT_FALSE(ret):ret == false 2、等于不等于 EXPECT_EQ(expected, actual):expected == actual ...
EXPECT_EQ(std::string("a"), "a"); EXPECT_NE(std::string("a"), "b"); { const char* cstr_1 = "abc"; const char* cstr_2 = "abc"; // 虽然两者相等,但是只是指针地址相等 // a_cstr和b_cstr拥有相同的地址是因为编译器 // 将相同的字符串常量放到了同一个常量区。 EXPECT_EQ(cstr...
EXPECT_EQ(40320, Factorial(8)); } int main(int argc, char* argv[]) { testing::InitGoogleTest(&argc,argv); //用来处理Test相关的命令行开关,如果不关注也可不加 RUN_ALL_TESTS(); //看函数名就知道干啥了 std::cin.get(); //只是让它暂停而已,不然一闪就没了 ...
EXPECT_EQ(3, Add(1,2)) // 假如你的Add(1, 2) 结果为4的话,会在结果中输出: g:\myproject\c++\gtestdemo\gtestdemo\gtestdemo.cpp(16): error: Value of: Add(1,2) Actual:4 Expected:3 如果是将结果输出到xml里的话,将输出:(关于将结果输出为xml,见:http://www.cnblogs.com/coderzh/archiv...
Google mock(以下简称gmock)和Google Test(以下简称gtest)是google的开源项目,他能够在测试中起到“...
EXPECT_EQ(3, Add(1,2)) // 假如你的Add(1, 2) 结果为4的话,会在结果中输出: g:\myproject\c++\gtestdemo\gtestdemo\gtestdemo.cpp(16): error: Value of: Add(1,2) Actual:4 Expected:3 如果是将结果输出到xml里的话,将输出:(关于将结果输出为xml,见:http://www.cnblogs.com/coderzh/archiv...