当前位置: 首页 > news >正文

gtest简单应用

介绍

GTest 是一个跨平台的 C++单元测试框架。gtest是为了在不同 平台上为编写C++单元测试而生成的。它提供了丰富的断言、致命和非致命判断、参 数化等等测试所需的宏,以及全局测试,单元测试组件。

使用

相关的断言

// bool 值检查 
ASSERT_TRUE(参数),期待结果是true 
ASSERT_FALSE(参数),期待结果是false 
//数值型数据检查 
ASSERT_EQ(参数1,参数2),传入的是需要比较的两个数  equal 
ASSERT_NE(参数1,参数2),not equal,不等于才返回true 
ASSERT_LT(参数1,参数2),less than,小于才返回true 
ASSERT_GT(参数1,参数2),greater than,大于才返回true 
ASSERT_LE(参数1,参数2),less equal,小于等于才返回true 
ASSERT_GE(参数1,参数2),greater equal,大于等于才返回true 

创建的函数
int max(int x,int y)
{//返回x、y的最大值return std::max(x,y);
}TEST(最大值测试,测试用例1)
{//判断是否相等ASSERT_EQ(max(10,20),20);//判断是否大于ASSERT_GT(max(10,20),10);//判断是否小于,这里我们判断为失败的结果,观察是否继续向下走ASSERT_LT(max(10,20),10);//判断是否为真ASSERT_TRUE((max(10,20)==5));}TEST(最大值测试,测试用例2){EXPECT_EQ(max(10,20),20);EXPECT_GT(max(10,20),10);EXPECT_LT(max(10,20),10);EXPECT_TRUE((max(10,20)==5));}

主函数

int main(int argc,char* argv[])
{//单元测试框架初始化testing::InitGoogleTest(&argc,argv);//启动所有的测试用例RUN_ALL_TESTS();return 0;
}

运行结果

我们可以发现第一个测试用例只要一个测试错误,其没有运行到 ASSERT_TRUE,但是第二个测试用例有两个报错,表明其运行到了最后

补充:

对于 gtest 事件机制的讲解,等到使用时会进行补充

http://www.dtcms.com/a/469814.html

相关文章:

  • 访答知识库,企业知识库,访答浏览器,Al编辑器,RAG,Pdf转word。个人知识库,访答RAG,云知识库,私有知识库……
  • 通过企业画册宣传_网络网站建设_新闻媒体合作等方式_企业营销网站制作
  • BERT相关知识自测
  • 【完整源码+数据集+部署教程】 真菌孢子图像分割系统源码&数据集分享 [yolov8-seg-convnextv2等50+全套改进创新点发刊_一键训练
  • 遵义市网站制作如何申请域名网站注册
  • GitHub 热榜项目 - 日榜(2025-10-11)
  • MySQL数据库之DBA命令
  • 4.打造个人Z-Library镜像
  • CoRL-2025 | 物体相对控制赋能具身导航!ObjectReact:学习用于视觉导航的物体相对控制
  • 长春seo网站优化做企业网站接单
  • word超链接网站怎么做网站建设网页设计网站模板
  • spring boot 整合 activiti 教程
  • 免费网站电视剧下载不支持下载的视频怎么保存下来
  • 接口自动化测试流程、工具与实践
  • 【C++继承】深入浅出C++继承机制
  • Mysql杂志(三十一)——Join连接算法与子查询、排序优化
  • HashMap - 底层原理
  • Python第二次作业
  • Vspy使用教程
  • 通用网站模板网站备案要幕布照
  • 网站三要素关键词 描述怎么做青海项目信息网官网
  • JavaScript学习笔记(二十八):JavaScript性能优化全攻略
  • mooc自动互评脚本笔记---2025年10月11日
  • 什么是语言模型
  • 免费网站正能量不用下载网站程序是什么?
  • 海外住宅IP的分类方式
  • wpf之ToggleButton控件
  • 【传奇开心果系列】基于Flet框架实现的文件选择文件保存和目录选择的样例自定义模板特色和实现原理深度解析
  • 做网站什么数据库用的多低价建站在哪里买
  • 从零搭建 React Native 到项目运行全记录(0.73.6 稳定版)