gtest 三种事件机制

参考:https://www.cnblogs.com/jiangyibo/p/9825610.html

1、三个层次

测试程序、测试套件、测试用例

2、 gtest 实践机制,是指在测试前和测试后提供给客户自行添加操作的机制,而且此机制也可以让同一测试套件下的测试用例共享数据。

一、全局的事件机制(针对整个测试程序

  实现全局的事件机制,需要创建一个自己的类,然后继承testing::Environment类,然后分别实现成员函数SetUp()和TearDown(),同时在main函数内进行调用,即"testing::AddGlobalTestEnvironment(new MyEnvironment);",通过调用函数我们可以添加多个全局的事件机制。

  SetUp()函数是在所有测试开始前执行。

  TearDown()函数是在所有测试结束后执行

 

二、局部的事件机制(针对一个个测试套件)

  测试套件的事件机制我们同样需要去创建一个类,继承testing::Test,实现两个静态函数SetUpTestCase()和TearDownTestCase(),测试套件的事件机制不需要像全局事件机制一样在main注册,而是需要将我们平时使用的TEST宏改为TEST_F宏。

  SetUpTestCase()函数是在测试套件第一个测试用例开始前执行。

  TearDownTestCase()函数是在测试套件最后一个测试用例结束后执行。

   需要注意TEST_F的第一个参数使我们创建的类名,也就是当前测试套件的名称。

 

三、个体的事件机制(针对一个个测试用例)

  测试用例的事件机制的创建和测试套件的基本一样,不同地方在于测试用例实现的两个函数分别是SetUp()和TearDown(),这两个函数不是静态函数了。

  SetUp()函数是在一个测试用例的开始前执行。

  TearDown()函数是在一个测试用例的结束后执行。

 

TO DO:

创建一个 python + cmake + gtest + clib 库的编译平台,并集成在docker中。

 

posted @ 2021-01-23 17:00  DVStream  阅读(472)  评论(0)    收藏  举报