首页 > 编程知识 正文

单元测试的方法有哪些(gtest测试c语言)

时间:2023-05-03 21:06:07 阅读:66360 作者:2006

在gtest中创建第一个单元测试用例之前的基础知识创建项目创建用例总结

正如我之前写的,我最近在学习单元测试,但对零度基点人来说,还是非常痛苦和容易记住。 在记录自己走出来的路,提升自己的同时,其他人的基础知识gtest由谷歌开发的跨平台c单元测试框架Visual Studio 2019已经集成了gtest创建项目,可以打开VS 2019 创建新的项目搜索关键字Google后,将得到Google测试的项目模板: Write C unit tests using Google Test。

选择项目模板Google Test,单击“下一步”以部署项目名称和位置,然后单击“创建测试项目”以部署

等待VS创建新项目:如图所示,创建了一个名为myGTest的项目

创建用例在test.cpp中编写函数Factorial (,Factorial ) )的单元测试用例#include'PCH.h'intfactorial ) intn ) { int result=1 for(intI=1; i=n; I({result*=I; }返回结果; }测试(测试factorial (1func,FirstGTest ) expect_eq(1,factorial )1); expect_eq(24,Factorial(4)4); }通过单元测试示例test(testfactorialfunc,FirstGTest ),您可以看到在gtest中创建测试用例很有用

)1)必须使用名为TEST的宏。 这有两个参数。 对于这两个参数,谷歌将TEST[TestCaseName,TestName]、TestCaseName解释为测试用例集,而TestName解释为TestCaseName的用例

)2)检查点的检查使用了一个名为EXPECT_EQ的宏,用于比较两个数字是否相等

)3)谷歌打包了一系列的EXPECT_*和ASSERT_*的宏。 EXPECT和ASSERT系列的区别在于,如果EXPECT_*失败,测试用例将继续运行。 如果ASSERT_*失败,则同一用例之后的语句将不再执行test(testFactorial(1func,FirstGTest ) expect_eq,factorial )1) )。 expect_eq(24,Factorial(4)4); }执行结果如下图所示

一些总结本文简要说明了gtest最基础的使用。 gTEST还有很多高级的使用方法。 在后面的学习中总结例子中,使用test宏制作了测试用例。 使用EXPECT_EQ设定了检查点。 关于gtest测试框架,不需要在测试框架本身上下功夫,只关注测试用例的设计和创建

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。