VS2019使用gtest

GoogleTest测试框架介绍(一)_liitdar的博客-CSDN博客_goole test

  • 术语

    test/test case/test suit

    Meaning GoogleTest Term ISTQB Term
    Exercise a particular program path with specific input values and verify the results TEST() Test Case
    A set of several tests related to one component Test Case Test Suite
  • 断言

    • 严重程度分类

      • ASSERT_* :当断言失败时,产生致命错误,并终止当前函数;

      • EXPECT_* :当断言失败时,产生非致命错误,并且不会终止当前函数。

    • 断言参数分类

      • 基本断言

      • 二元断言

      • 字符串断言

GoogleTest测试框架介绍(二)_liitdar的博客-CSDN博客_google test框架

  • TEST()

    参数为test case名称和test名称。断言参数为函数和结果。

    // 此函数用于判断入参是否为正整数:如果是,则返回0;否则,返回-1
    int Positive(int nNum)
    {
    if (nNum > 0)
    {
    return 0;
    }
    else
    {
    return -1;
    }
    } // 测试入参2是否为正整数
    TEST(PositiveTest, HandlesPositiveInput)
    {
    EXPECT_EQ(Positive(2), 0);
    }
  • TEST_F()

    在同一个TEST_F里生成和使用同一个Test Fixture对象。参数为类名test名称。

    // 定义测试类FooTest
    class FooTest: public testing::Test {
    protected:
    // Code here will be called immediately after the constructor (right before each test)
    void SetUp()
    {
    m_nTarget = 5;
    } // Code here will be called immediately after each test (right before the destructor)
    void TearDown()
    {
    } public:
    int IsLargeThan5(const int & nNum);
    int m_nTarget;
    }; // 判断入参是否大于5:如果是,则返回0;否则返回-1
    int FooTest::IsLargeThan5(const int & nNum)
    {
    if (nNum > m_nTarget)
    {
    return 0;
    }
    else
    {
    return -1;
    }
    } TEST_F(FooTest, HandlesInput6)
    {
    EXPECT_EQ(IsLargeThan5(6), 0);
    }

Googletest 入门 - 简书 (jianshu.com)

玩转Google开源C++单元测试框架Google Test系列(gtest)(总) - CoderZh - 博客园 (cnblogs.com)

GoogleTest User’s Guide | GoogleTest

单元测试成神之路——C++篇 – wanziの遇笺 (zhangyuyu.github.io)

注意:确保安装时安装了gtest,并且扩展中启用了gtest。我就是在扩展中禁用了,新建项目找不到gtest,哭哭。

VS2019使用gtest的更多相关文章

  1. GTest Google的一种白盒单元测试框架 开源项目

    GTest为google开源的白盒单元测试跨平台测试框架,含丰富的断言.类型参数化测试.死亡测试.以及其他的测试选项设置.文件保存等,以下将对该项目C++的实现进行简要的分析,作为学习记录备份. 基本 ...

  2. Google C++单元测试框架---Gtest框架简介(译文)

    一.设置一个新的测试项目 在用google test写测试项目之前,需要先编译gtest到library库并将测试与其链接.我们为一些流行的构建系统提供了构建文件: msvc/ for Visual ...

  3. ROS系统C++代码测试之gtest

    1. 安装gtestsudo apt-get install libgtest-dev 2.修改CMakeLists.txtfind_package(GTest REQUIRED)uncommend ...

  4. gTest详解

    1. 安装使用 1.1 安装 在https://code.google.com/p/googletest/ 下载源码 进入msvc, 注意编译方式, 如果是dll, 选择 gtest-md 编译生成l ...

  5. google gtest window 平台应用

    下载gtest:https://code.google.com/p/googletest/downloads/detail?name=gtest-1.7.0.zip 编译: 会出现的问题:error ...

  6. gtest学习一:在vs2013中搭建gtest环境

    gtest版本:1.7.0,在哪里下载源码就不说了,网上太多了~ 配置过程: 1.下载解压后,进入googletest/msvc目录,直接打开gtest.sln,发现有四个工程:gtest.gtest ...

  7. C++单元测试 之 gtest -- 组合数计算.

    本文将介绍如何使用gtest进行单元测试. gtest是google单元测试框架.使用非常方便. 首先,下载gtest (有些google项目包含gtest,如 protobuf),复制目录即可使用. ...

  8. gtest 1.7编译错误:std:tr1:tuple模板参数过多的解决方案

    在gtest/gtest.h文件中添加如下代码 #define _VARIADIC_MAX 10

  9. gtest

    一.安装配置 1.简介 2.安装 下载地址: https://code.google.com/p/googletest/downloads/list 解压安装: unzip gtest-1.7.0.z ...

  10. gtest vs2015配置

    1. 下载gtest https://github.com/google/googletest 2. 解压文件 使用vs2015 打开googletest-master\googletest\msvc ...

随机推荐

  1. Spring Boot整合Redis-CRUD

    Springboot整合redis spring Data Redis 操作Redis 1.pom.xml <?xml version="1.0" encoding=&quo ...

  2. GetShell 之:利用 SQLServer GetShell

    GetShell 之:利用 SQLServer GetShell 目录 GetShell 之:利用 SQLServer GetShell 1 SQLServer 基础操作 2 SQLServer 利用 ...

  3. 如何在电脑上配置Vue开发环境

    一,开发环境 : Node JS(npm) Visual Studio Code(前端IDE) 安装NodeJS 下载地址: nodejs中文网 Visual Studio Code 官网下载地址 h ...

  4. pytorch学习笔记一之张量

      1. 张量¶   1.1. 概述¶   张量(tensor)是pytorch中的一种较为基础的数据结构,类比于numpy中的ndarrays,在pytorch中,张量可以在GPU中进行运算   通 ...

  5. 数据结构和算法day1(Java)

    1.什么是数据结构? 数据结构就是把数据元素按照一定的关系组织起来的集合,用来组织和存储数据. 1.2.数据结构的分类: 逻辑结构 和物理结构 逻辑结构: 集合结构(无关系).线性结构(一对一).树形 ...

  6. hashMap的底层数据结构

    本节用于记录Java HashMap底层数据结构.方法实现原理等,基于JDK 1.8. # 底层数据结构 Java hashMap 是采用哈希表结构的(数组+链表 /jdk8后加入红黑树)实现,结合了 ...

  7. springmvc关于通过使用路径占位符出现中文乱码解决办法

    springmvc接受json数据使用@GetMapping通过名称.通过对象,也可以通过路径.当使用路径占位符时,会出现中文乱码.此时,需要转换.即 @GetMapping("/girl5 ...

  8. FICO开发

    一.增强 1.FBL5N / 客户供应商行项目 对于客户供应商行项目报表展示增强字段: 方法① badi: FI_ITEMS_CH_DATA   更改输出内表数据即可 方法② BTE: 详见 http ...

  9. vue学习 第一天 html 基础

    1.web标准的构成: <结构Structure>(对应html文件).<表现Presentation>(对应css文件) 和<行为Behavior>(对应js)三 ...

  10. window下快速启动mysql,bat脚本

    cls @echo off:设置窗口字体颜色color 0a :设置窗口标题TITLE MySQL管理程序 call :checkAdmin goto menu:菜单:menuclsecho. ech ...