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

【日常学习笔记】gtest

https://zhuanlan.zhihu.com/p/369466622

int Factorial(int n) {int result = 1;for (int i = 1; i <= n; i++) {result *= i;}return result;
}

TEST(TestSuiteName, TestName) 第一个参数可以表示为一个对某一个函数进行测试,第二个参数表示对这个函数测试时的分的几种场景;所以对一一个函数测试时,第一个参数应该是一样的,第二个参数针对这个函数的不同场景有不同的名字。

// 下面三个 TEST 都是属于同一个 test suite,即 FactorialTest
// 正数为一组
TEST(FactorialTest, Negative) {EXPECT_EQ(1, Factorial(-5));EXPECT_EQ(1, Factorial(-1));EXPECT_GT(Factorial(-10), 0);
}
// 0
TEST(FactorialTest, Zero) {EXPECT_EQ(1, Factorial(0));
}
// 负数为一组
TEST(FactorialTest, Positive) {EXPECT_EQ(1, Factorial(1));EXPECT_EQ(2, Factorial(2));EXPECT_EQ(6, Factorial(3));EXPECT_EQ(40320, Factorial(8));
}

main函数中增加RUN_ALL_TESTS()即可运行。

int main(int argc, char **argv) {printf("Running main() from %s\n", __FILE__);testing::InitGoogleTest(&argc, argv);return RUN_ALL_TESTS();   
}

⚠️ 另外还有TEST_F,提供更加高级的用法

http://www.lryc.cn/news/288949.html

相关文章:

  • go-zero配置DB的redis缓存
  • 物理服务器
  • 3.3 实验三:以太网链路聚合实验
  • php mysql字段默认值使用问题
  • 【linux】Debian防火墙
  • 2022年至2023年广东省职业院校技能大赛高职组“信息安全管理与评估”赛项样题
  • CC++内存管理【非常详细,对新手友好】
  • 022-安全开发-PHP应用留言板功能超全局变量数据库操作第三方插件引用
  • 大白话解析LevelDB 3: SST Compaction
  • 【Python】02快速上手爬虫案例二:搞定验证码
  • C# 中的接口
  • 一篇文章带你了解C++中隐含的this指针
  • shardinig-JDBC二开-支持sharding-jdbc的配置文件接入到nacos
  • a-table自定义展开图标
  • Kubernetes Ingress暴露应用的工作流程
  • Redis应用(1)缓存(1.2)------Redis三种缓存问题
  • 安全 专题
  • 自然语言处理-文本对分类或回归
  • 以梦为码,CodeArts Snap 缩短我与算法的距离
  • SpringMVC-HttpMessageConverter 报文信息转化器
  • [AG32VF407]国产MCU+FPGA 使用I2C测试陀螺仪MPU6050
  • ES 可扩展、高可靠、使用场景等常见问题
  • <网络安全>《4 网络安全产品之web应用防护系统》
  • 如何解决Flutter应用程序的兼容性问题
  • 详解Mockito
  • 【论文+App试玩+图像到视频】2311.Animate-anyone:上传1张图片为任何人制作动画(用于角色动画的一致且可控的图像到视频合成)(暂未开源)
  • 【深度学习实验】TensorBoard使用教程【SCALARS、IMAGES、TIME SERIES】
  • 渗透测试(12)- WireShark 网络数据包分析
  • XSS_Labs靶场通关笔记
  • 基于本地缓存制作一个分库分表的分布式ID生成器