代码语言:javascript 复制 TEST_P(CombineTest,Test){EXPECT_TRUE(checkData());}INSTANTIATE_TEST_CASE_P(TestBisValuesCombine,CombineTest,Combine(Bool(),Values(0,1,2,3,4))); 如何我们便可以衍生出8组测试。我们看下部分测试结果输出 代码语言:javascript 复制 [---]8tests from TestBisValuesCombine/Com...
EXPECT_TRUE(ret):ret == true EXPECT_FALSE(ret):ret == false 2、等于不等于 EXPECT_EQ(expected, actual):expected == actual EXPECT_NE(expected, actual):expected != actual EXPECT_FLOAT_EQ(expected, actual):(float)expected == actual EXPECT_DOUBLE_EQ(expected, actual):(double)expected == ac...
调用ASSERT_TRUE的函数,返回值类型定义必须是void,如果想返回别的类型,就用EXPECT_TRUE: void abc::fun(){ ASSERT_TRUE(fun1()); } bool abc::fun(){ bool result = fun1(); EXPECT_TRUE(result );returnresult ; } ASSERT_TRUE is amacro. When expanded it will contain a branch like:if(fun1(...
6. EXPECT_GE:预期第一个值大于或等于第二个值。如果第一个值小于第二个值,gtest会记录一个错误,但不会立即停止当前的测试。 7. EXPECT_FALSE:预期表达式为假。如果表达式为真,gtest会记录一个错误,但不会立即停止当前的测试。 8. EXPECT_TRUE:预期表达式为真。如果表达式为假,gtest会记录一个错误,但不会立...
2、EXPECT_系列:如果当前点检测失败则继续往下执行 如果你对自动输出的错误信息不满意的话,也是可以通过operator<<能够在失败的时候打印日志,将一些自定义的信息输出。 ASSERT_系列: bool值检查 1、 ASSERT_TRUE(参数),期待结果是true 2、ASSERT_FALSE(参数),期待结果是false ...
二、gtest系列之断言gtest中断言的宏可以分为两类:一类是ASSERT宏,另一类就是EXPECT宏了。 1、ASSERT_系列:如果当前点检测失败则退出当前函数 2、EXPECT_系列:如果当前点检测失败则继续往下执行 如果你对自动输出的错误信息不满意的话,也是可以通过operator<<能够在失败的时候打印日志,将一些自定义的信息输出。 ASSERT...
EXPECT_TRUE(condition):检查条件是否为真。 EXPECT_FALSE(condition):检查条件是否为假。 EXPECT_EQ(val1, val2):检查两个值是否相等。 EXPECT_NE(val1, val2):检查两个值是否不相等。 EXPECT_LT(val1, val2):检查 val1 是否小于 val2。 EXPECT_LE(val1, val2):检查 val1 是否小于或等于 val2。
EXPECT_* 的断言:当检查点失败时,继续往下执行,最后在结果中输出期望值和实际值。 一般EXPECT_* 更常用,它可以输出测试的多个失败,常用的断言如下,包括布尔类型、整数类型、浮点类型、字符串等。 1、真假判断 EXPECT_TRUE(ret):ret==trueEXPECT_FALSE(ret):ret==false ...
在写单元测试时,更加倾向于使用EXPECT_XXX,因为ASSERT_XXX是直接crash退出的,可能会导致一些内存、文件资源没有释放,因此可能会引入一些bug。 具体的EXPECT_XXX、ASSERT_XXX函数及其判断条件,如下两个表。 表1 一元比较 表2 二院比较 Quick Start 下面以EXPECT_XXX为例子,快速开始使用gtest吧。
EXPECT_TRUE(condition); condition is true ASSERT_FALSE(condition); EXPECT_FALSE(condition); condition is false GTest中断言都是成对出现的。即分为两个系列: ASSERT_*系列; EXPECT_*系列; EXPECT_*系列是比较常用的。在一个测试特例中,如果局部测试使用了EXPECT_*系列函数,它将保证本次局部测试结果不会影响...