0


gtest语法(一)TEST和TEST_F宏

文章目录


TestCase的介绍

本章节主要介绍在使用Gtest单元测试的常用宏的用法及说明。其目的达到如何使用Gtest即可不做深入研究其运行原理。
Gtest提供了若干个case方法进行测试不同的用例。主要常见的有TEST/TEST_F及TEST_P宏的使用。
在每个TestCase中可以通过断言([断言类型介绍])提供的方法进行控制检查程序的预期走向是否是期望的结果,从而以此来判定程序的正确性。
在同一份TestCase中不能同时出现TEST和TEST_F两者进行混用;
其次TEST_F比TEST强的地方是会通过继承::testing::Test生成一个新类,而且这是必须的。在新类中可以通过void SetUp();和void TearDown();进行创建和清除相关的资源数据;

TEST宏

TEST宏的作用是创建一个简单测试,它定义了一个测试函数,在这个函数里可以使用任何C++代码并使用提供的断言([断言类型介绍])来进行检查。

TEST语法定义:
TEST(test_case_name, test_name)
  • test_case_name第一个参数是测试用例名,通常是取测试函数名或者测试类名
  • -test_name 第二个参数是测试名这个随便取,但最好取有意义的名称
  • 当测试完成后显示的测试结果将以"测试用例名.测试名"的形式给出

我们以gtest自带的sample1例子为例,直接查看其输出结果。

在这里插入图片描述

TEST_F宏

TEST_F主要是进行多样测试,就是多种不同情况的测试TestCase中都会使用相同一份的测试数据的时候将会才用它。
即用相同的数据测试不同的行为,如果采用TEST宏进行测试那么将会为不同的测试case创建一份数据。TEST_F宏将会共用一份避免重复拷贝共具灵活性。

语法定义为:
TEST_F(test_case_name, test_name);
  • test_case_name第一个参数是测试用例名,必须取类名。这个和TEST宏不同
  • test_name 第二个参数是测试名这个随便取,但最好取有意义的名称
  • 使用TEST_F时必须继承::testing::Test类。并且该类提供了两个接口void SetUp(); void TearDown(); void SetUp()函数,为测试准备对象. void TearDown()函数 为测试后销毁对象资源。

我们以gtest自带的sample3例子为例,直接查看其输出结果。


本文转载自: https://blog.csdn.net/qq_26849933/article/details/126969970
版权归原作者 胖茄子 所有, 如有侵权,请联系我们删除。

“gtest语法(一)TEST和TEST_F宏”的评论:

还没有评论