一、gtest是什么
gtest全程为GoogleTest,是一个跨平台的(Liunx、Mac OS X、Windows、Cygwin、Windows CE and Symbian)C++单元测试框架,由google公司发布。
如何去下载,调用,这个可以去找下相关教程,还需要先学下cmake相关的知识。篇幅有限,我们有空再讲。
二、gtest能做什么
gtest提供了丰富的断言、致命和非致命判断、参数化、”死亡测试”
我们直接举个栗子:
我们写了一个a+b的加法函数,输入2个int型的数,返回它们的和。
我们调用这个函数,然后输入设计的参数,与预期的值进行比对。比如我们输入1,2.我们预期它返回的值为3.
TEST宏是gtest提供的一个测试宏,它有2个参数,第一个为测试套件名称,第二个为具体用例名称。这2个名字,都是我们可以自己随意写的。
gtest提供了2个断言宏ASSERT和EXPECT。
ASSERT_——如果当前点检测失败则退出当前函数
EXPECT_——如果当前点监测失败则继续往下执行
EQ表示数值型数据检查,预期值与实际值相同。
这里我们可以粗略的介绍下其他类型的断言
下面那个main方法,是gtest的固定写法,可以先不管,有兴趣可以点进去看下源码。
最后,我们运行下这个测试demo,看下测试结果
从图上,我们可以清晰的看到,哪些测试套件、测试用例运行是否成功。
这里,我们也可以故意写个错的,看下失败的展示样子
从结果从,我们看到,它显示测试不通过,并且指出了测试不通过的位置,函数。非常的好用。
好了,这个demo讲解就到这了,我们后续再去了解下gtest的事件机制、参数化、死亡测试等内容
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...