单元测试和gtest

背景

1、互联网公司的角色

  • 开发——RD
  • 测试——QA
  • 运维——OP
  • 产品经理——PM

2、项目开发流程

  • 背景调研——竞品调研
  • 需求评审——MRD需求标准
  • RD/QA反馈排期
  • 项目设计——RD设计好如何进行设计
  • 开发编码——RD搬砖
  • QA测试
  • 上线/发布

3、软件测试

(1)从开发周期:单元测试——集成测试——系统测试——验收测试——回归测试

(2)从测试形式:黑盒测试——白盒测试——灰盒测试

4、单元测试

(1)概念:RD/QA通过编写代码针对一个一个的函数进行测试

(2)意义:一个 bug 被发现的越早,解决成本越低 . ( 开发中 <  单元测试 <  集成测试 <  上线 ).;另一方面,充分的单元测试有助于加快项目的迭代速度,方便回归测试。 

gtest简介

gtest的主要使用者是RD

gtest是业界广泛使用的单元测试框架

gtest的特点:

  • gtest需要使用的头文件和宏函数更集中,并支持测试用例的自动注册。
  • gtest不要求Python等外部工具。
  • gtest更简洁容易上手。

测试宏TEST

1、TEST

  • 使用TEST宏来创建一个测试
  • TEST宏有两个参数,TEST(testcasename,test_name)
  • TEST宏中可以写任何C++的合法语句
  • 使用gtest提供的断言(ASSERT和EXPECT来判定测试结果)

2、测试宏

ASSERT_系列:如果检测失败,退出当前测试

EXPECT_系列:如果检测失败,继续往下跑

通过operator<<能够在失败时打印需要的日志

 

事件机制

“事件”的本质是框架给你提供了一个机会,让你能在这样的几个机会来执行你自定制的代码,来给测试用例准备/清除数据

“机会”分为三组:

  • 每个test的开始/结束
  • 每个test_case的开始/结束
  • 全局的开始/结束

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值