一、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的事件机制、参数化、死亡测试等内容

软件测试(白盒测试入门之gtest测试)相关推荐

  1. 软件测试--白盒测试、黑盒测试、α测试、β测试

    测试的目的:尽可能多的发现缺陷,比如功能的错误,性能低下,易用性差. 测试的思路:先假设程序存在什么缺陷,然后执行程序来发现缺陷. 测试类型:白盒测试,黑盒测试. 主要发现以下问题:是否有不正确或遗漏 ...

  2. Gtest 测试指导 入门基础(A)

    Gtest 测试指导 入门基础(A) Table of Contents • 1 Gtest的基本使用,包括下载,安装,编译. o 1.1 下载 o 1.2 编译  1.2.1 Gtest静态库的编 ...

  3. 软件测试工程师入门面试理论题库(一)

    软件测试工程师入门面试理论题库 1,软件测试的定义:通过运行被测试的软件,发现软件的问题和错误来对软件进行质量评估. 2,测试的范围:程序,程序所用的数据及相关文档. 3,测试的风险:进度风险,质量风 ...

  4. 软件测试笔记——3.多种多样的测试类型

    前言 在之前的<软件测试笔记--1.什么是软件测试-定义.类型.方法?>中也曾经提高过测试的种类非常多,不同的术语往往让新人或者入行不久的测试人员望而生畏,对于开发也是同样的.这里推荐一个 ...

  5. 软件测试-白盒测试:逻辑覆盖

    逻辑覆盖 参考文献: 软件测试第4章白盒测试一 软件测试--白盒测试 白盒测试-覆盖测试(六种覆盖方法) 几种常用的逻辑覆盖测试方法 目的:结构测试是依据被测程序的逻辑结构设计测试用例,驱动被测程序运 ...

  6. 24岁本科女生培训入门,学测试和前端哪个好?

    无论是从年龄还是从学历来说,学这两个学科都是没有任何问题的,两个学科从发展前景和薪资,技术难度方面来说都是相对比较适合女生去学习的.那么你现在的出发点就应该换到,自己对哪个学科更感兴趣,更能学习下去, ...

  7. 工资软件测试白盒测试报告,软件测试白盒测试实验报告

    <软件测试白盒测试实验报告>由会员分享,可在线阅读,更多相关<软件测试白盒测试实验报告(7页珍藏版)>请在人人文库网上搜索. 1.西南科技大学计算机学院实验报告实 验 名 称 ...

  8. 软件测试用例白盒测试,软件测试白盒测试测试用例与代码.doc

    软件测试白盒测试测试用例与代码 实验二 白盒测试 1.实验目的 能熟练应用白盒测试技术设计测试用例 2.实验内容 计算生日是星期几 已知公元1年1月1日 是星期一.编写一个程序,只要输入年月日,就能回 ...

  9. 软件测试 白盒测试案例--代码输入日期计算星期数

    文章目录 软件测试 白盒测试案例--代码输入日期计算星期数 一.实验内容 二.实验步骤 三.实验结果 软件测试 白盒测试案例–代码输入日期计算星期数 一.实验内容 以下代码为输入日期计算星期数.对其代 ...

  10. 《软件测试》第八章 配置测试

    <软件测试>第八章 配置测试 8.0 前言 8.1 配置测试综述 8.1.1 分离配置缺陷 8.1.2 计算工作量 8.2 执行任务 8.2.1 确定所需的硬件类型 8.2.2 确定有哪些 ...

最新文章

  1. 遥感图像+CNN,预测区域人口收入水平
  2. 程序员福音-定时提醒bat
  3. Git命令家底儿及Git数据通信原理详解
  4. 算法基础课-动态规划-区间dp-AcWing 282. 石子合并:区间dp
  5. vue上传文件到php,vue+axios+php如何实现上传文件功能?,formdata上传文件附加参数...
  6. 使用gradle-android搭建jenkins slave构建机器常见构建问题(二)
  7. ffmpeg中文开发手册_快速调用复杂命令,支持中文注释,命令行备忘工具navi两天就火了...
  8. 插入数据的时候出现错误:Error during job, obtaining debugging information…
  9. java堆和非堆_java 堆与非堆 内存
  10. 第五节:一个令人兴奋的ES6新特性:解构赋值
  11. [一分钟先生]涂勇:通过跳槽走上管理岗位不可取
  12. “双击Pycharm无响应”解决方案
  13. 2.mysql高级查询
  14. vue 下载文件的两种方法
  15. 【xinfanqie】美女逢泽莉娜win7主题_8.3
  16. 跨境电商独立站,如何找到更多联盟流量资源
  17. Linux运维工程师必看:如何成为一个合格的运维工程师
  18. 2种方式!带你快速实现前端截图
  19. 小米路由r2d论坛_小米路由R2D,拼夕夕翻车了没
  20. 【python学习小案例】提高兴趣之BMI计算器

热门文章

  1. vs2010最佳配色选择_2010年代35部最佳电影
  2. Springboot+高校考勤小程序 毕业设计-附源码131039
  3. stdafx.h头文件代码
  4. 图像处理笔记1一上采样与下采样
  5. c语言16qam,基于SIMULINK的OFDM-16QAM系统仿真与分析
  6. l440加装固态硬盘ngff_[转载]Thinkpad E431装NGFF固态硬盘图文详解
  7. python画正切函数图像_python的pygal模块绘制反正切函数图像方法
  8. db2 中sql 拼接字符串
  9. 国家统计局统计用区划和城乡划分代码
  10. 公众号H5跳转小程序