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...
代码语言: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和ASSERT_TRUE的实现 代码语言:javascript 复制 #defineEXPECT_TRUE(condition)\GTEST_TEST_BOOLEAN_(condition,#condition,false,true,\GTEST_NONFATAL_FAILURE_) 代码语言:javascript 复制 #defineASSERT_TRUE(condition)\GTEST_TEST_BOOLEAN_(condition,#condition,false,true,\GTEST_FATAL_FAILURE_...
调用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(...
在写单元测试时,更加倾向于使用EXPECT_XXX,因为ASSERT_XXX是直接crash退出的,可能会导致一些内存、文件资源没有释放,因此可能会引入一些bug。 具体的EXPECT_XXX、ASSERT_XXX函数及其判断条件,如下两个表。 表1 一元比较 表2 二元比较 Quick Start 下面以EXPECT_XXX为例子,快速开始使用gtest吧。
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 ...
ASSERT_EQ(expected, actual):与EXPECT_EQ相同,但失败时会终止测试。 ASSERT_NE(val1, val2):与EXPECT_NE相同,但失败时会终止测试。 ASSERT_TRUE(condition):与EXPECT_TRUE相同,但失败时会终止测试。 ASSERT_FALSE(condition):与EXPECT_FALSE相同,但失败时会终止测试。 4.3 选择 EXPECT_ 还是 ASSERT_? 使用EXPE...
前面例子中EXPECT_EQ(ret_value, 1);表示ret_value应该等于1,用于描述我们期待的测试结果。 期待的结果可以用下面的方式表达,后续的行为有所不同 EXPECT_*失败仍然继续 ASSERT_*失败即停 其中*可以为: 布尔型结果 TRUE(condition) FALSE(condition) 例如,EXPECT_TRUE(retValue == 1) ...
2、EXPECT_系列:如果当前点检测失败则继续往下执行 如果你对自动输出的错误信息不满意的话,也是可以通过operator<<能够在失败的时候打印日志,将一些自定义的信息输出。 ASSERT_系列: bool值检查 1、 ASSERT_TRUE(参数),期待结果是true 2、ASSERT_FALSE(参数),期待结果是false ...