EXPECT_GT(Factorial(-10), 0); } TEST(IsPrimeTest, Negative) { // This test belongs to the IsPrimeTest test case. EXPECT_FALSE(IsPrime(-1)); EXPECT_FALSE(IsPrime(-2)); EXPECT_FALSE(IsPrime(INT_MIN)); } // Returns true if m and n have no common divisors except 1. bool MutuallyP...
EXPECT_GT(val1, val2) val1 > val2 ASSERT_GE(val1, val2) EXPECT_GE(val1, val2) val1 >= val2 值参数必须是断言的比较操作符可比较的,否则将报出编译错误。例:// int型比较,预期值:4,实际值:Add(1, 2) EXPECT_EQ(4, Add(1, 2)) 结果...
TEST(FactorialTest, Negative) {//This test is named "Negative", and belongs to the "FactorialTest"//test case.EXPECT_EQ(1, Factorial(-5)); EXPECT_EQ(1, Factorial(-10)); EXPECT_GT(Factorial(-10),0); } //Tests factorial of 0.TEST(FactorialTest, Zero) { EXPECT_EQ(1, Factorial...
EXPECT_EQ(1, Factorial(-5)); EXPECT_EQ(1, Factorial(-1)); EXPECT_GT(Factorial(-10), 0); } TEST(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)); EXPE...
EXPECT_EQ, EXPECT_NE,EXPECT_LT,EXPECT_GT,EXPECT_LE,EXPECT_GE 另外,GTEST还支持STRING的比较。相关函数有(以ASSERT为例) ASSERT_STREQ,ASSERT_STRNE,ASSERT_STRCASEEQ,ASSERT_STRCASENE 4. TEST与TEST_F之间的区别 TEST_F比TEST强一些的地方在于TEST_F实际上会生成一个新类,该类有SetUp和TearDown函数用于...
EXPECT_GT和ASSERT_GT: 验证第一个值是否大于第二个值。 EXPECT_GE和ASSERT_GE: 验证第一个值是否大于等于第二个值。 这些断言函数在断言失败时的行为略有不同: EXPECT_*系列:如果断言失败,将会输出错误信息,但测试函数继续执行。 ASSERT_*系列:如果断言失败,将会输出错误信息,并终止当前测试函数的执行。
在上述示例中,EXPECT_EQ是一个EXPECT系列的宏,用于判断两个值是否相等。如果断言失败(即实际结果与预期结果不一致),Google Test会将测试结果标记为失败,并输出相关信息。 Google Test还提供了其他类型的EXPECT_宏,用于不同类型的比较,如EXPECT_TRUE、EXPECT_FALSE、EXPECT_LT(小于)、EXPECT_GT(大于)、EXPECT_LE(小...
EXPECT_GT(val1, val2); val1 > val2 ASSERT_GE(val1, val2); EXPECT_GE(val1, val2); val1 >= val2 在发生故障时,Google测试同时打印val1和val2。 而且值参数通过断言的比较运算符必须可以比较,否则会出现编译错误。 字符串 ASSERT_ Verifies ASSERT_STREQ(expected_str,actual_str); the two C ...
EQ:EQual NE:Not Equal LT:Less Than LE:Less Equal GT:Greater Than GE:Greater Equal比较值都可以是任意编译器能识别的可比较类型,当然包括指针,但是注意空指针比较:使用EXPECT_EQ(ptr, nullptr) 而不是 EXPECT_EQ(ptr, NULL),这个规则对于其他比较类的断言也适用.适用于字符串 std::string .但不适用于C...
大部分的使用都是一样的,下面只对几个有代表性的做使用示例;为了方便,只对ASSERT做示例,因为它的效果和EXPECT完全一致,上文已经提到了二者的区别了。 4.1 ASSERT_EXIT ASSERT_EXIT有三个参数,分别为待测函数、退出码或退出信号、错误信息regex;待测函数必须以指定的错误码或错误信号退出程序,并在stderr中打印能被...