使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇

这篇具有很好参考价值的文章主要介绍了使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

入门教程

Visual Studio 新建 GoogleTest项目,一路选默认参数使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇,C++,visual studio,c语言,c++
pch.h

#pragma once

#include "gtest/gtest.h"

int add(int a, int b);

pch.cpp

#include "pch.h"

int add(int a, int b)
{
	return a + b;
}

test.cpp

#include "pch.h"

TEST(TestCaseName, TestName) {
  EXPECT_EQ(4, add(1,3));
  EXPECT_TRUE(add(1,2)==3);
}

编译运行
使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇,C++,visual studio,c语言,c++
成功

[C++] gtest入门教程

开始尝试google test单元测试工具(又是MTd/MDd搞的鬼!)附带VC运行库详解

对现有解决方案添加GoogleTest项目

在当前解决方案下,新建GoogleTest项目
使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇,C++,visual studio,c语言,c++
引用自己要测试的工程,配置相关属性(C++ 附加包含目录等)

#include "pch.h"
#include "要测试的头文件.h"
SLineProcessor lineProcessor;
TEST(TestCaseName, TestName) {
  EXPECT_EQ(lineProcessor.bClose, 1);
  EXPECT_TRUE(true);
}

运行
搞定

如何使用GoogleTest 测试C++重构代码

要使用Google Test来测试C++重构的代码,你可以按照以下步骤进行操作:

  1. 集成Google Test:首先,将Google Test框架集成到你的项目中。可以通过下载Google Test源代码并将其添加到你的项目中,或者使用包管理工具(如vcpkg)进行安装。

  2. 创建测试文件:为每个需要测试的模块创建对应的测试文件。通常,测试文件的命名约定是在源文件的基础上添加"_test"后缀。

  3. 编写测试用例:在测试文件中,使用Google Test提供的宏和断言来编写测试用例。例如,使用TEST()宏定义一个测试用例,并在其中使用断言宏(如EXPECT_EQ()ASSERT_TRUE()等)进行期望结果的验证。

  4. 使用Google Test框架的断言:Google Test提供了许多断言宏来帮助验证测试结果是否符合预期。这些断言宏可以比较值、判断异常情况、检查容器等等。详细的断言列表和用法可以在Google Test文档中找到。

  5. 运行测试:使用适当的命令行工具或集成到IDE中的插件来运行测试。一般情况下,你需要提供可执行文件名称,并指定运行测试的参数,如过滤器(指定要运行的特定测试用例)和输出结果的格式。

  6. 分析测试结果:查看测试结果报告,了解哪些测试通过,哪些失败。如果有失败的测试,查看详细错误信息以帮助定位问题。

  7. 修复问题:根据失败的测试用例和错误信息,找出导致失败的原因,并修复代码中的问题。确保修复后再次运行单元测试以确认问题已解决。

总之,使用Google Test测试重构的C++代码与以前一样,你只需在新的测试文件中重新编写测试用例,使用Google Test提供的断言宏来验证测试结果即可。这样可以确保重构后的代码仍然能够通过相同的测试用例,并保持代码的质量和稳定性。

chatgpt生成文章来源地址https://www.toymoban.com/news/detail-658537.html

到了这里,关于使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于MSTest框架创建一个简单的C#单元测试(Visual Studio 2019版)

    目录 1、环境准备 2、创建一个被测试项目 3、创建单元测试项目 4、执行测试 5、说明   环境: IDE: Visual Studio 2019 单元测试框架:MSTest .NET 版本:.NET Core 3.1 Test.Sdk版本:Microsoft.NET.Test.Sdk 16.9.4 目的: 编写单元测试方法以验证   BankAccount   类的   Debit   方法,至少需要检查

    2023年04月26日
    浏览(82)
  • 一文掌握谷歌 C++ 单元测试框架 GoogleTest

    GoogleTest GoogleTest(简称 GTest) 是 Google 开源的一个跨平台的(Liunx、Mac OS X、Windows等)的 C++ 单元测试框架,可以帮助程序员测试 C++ 程序的结果预期。不仅如此,它还提供了丰富的断言、致命和非致命判断、参数化、”死亡测试”等等。 GoogleTest 官网:https://google.github.io/go

    2024年02月03日
    浏览(43)
  • 一个简单好用的C++语言单元测试框架-GoogleTest

    GoogleTest 是由 Google 开发的一个用于编写 C++ 单元测试的框架。单元测试中单元的含义,单元就是人为规定的最小的被测功能模块,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。在实际项目中,单元测试往往由开发人员完成。

    2024年01月19日
    浏览(97)
  • GoogleTest+VS code编译和编写简单测试用例

    在B站看了非常多Gtest的教学视频,CSDN上gtest博客也特别多,但是都非常陈旧或者根本不是用vscode。本篇目的在于,说明如何在vscode上编写简单单元测试。 软件:vscode 2023 下载googletset源码: git clone https://gitcode.net/mirrors/google/googletest.git 原repo:https://github.com/google/googletest下载特

    2024年02月07日
    浏览(38)
  • 如何为前端编写单元测试?从这篇入门指南开始学习!

    前言 对于现在的前端工程,一个标准完整的项目,通常情况单元测试是非常必要的。但很多时候我们只是完成了项目而忽略了项目测试。我认为其中一个很大的原因是很多人对单元测试认知不够,因此我写了这边文章,一方面期望通过这篇文章让你对单元测试有一个初步认识

    2024年02月01日
    浏览(46)
  • 使用Microsoft Visual Studio编写C#上位机(串口助手)

    最近跟着刘工写了一套用于单片机与电脑通信的串口助手,此处将自己手敲的代码记录下来,供大家一起学习交流。 一、程序界面   程序界面 程序界面说明    二、代码(Form1.cs)  三、备注 此处在Form1的属性中,将AutoSize设为True,AutoScroll设为True,AutoScaleMode设为Font,以应

    2024年02月11日
    浏览(55)
  • C++单元测试GoogleTest和GoogleMock十分钟快速上手(gtest&gmock)

    下载 安装 重要文件 googletest gtest/gtest.h libgtest.a libgtest_main.a 当不想写 main 函数的时候,可以直接引入 libgtest_main.a; 否则 googlemock gmock/gmock.h libgmock.a libgmock_main.a 一 .断言 gtest 中的断言分成两大类: ASSERT_* 系列:如果检测失败就直接退出 当前函数 EXPECT_* 系列:如果检测失败

    2024年02月06日
    浏览(41)
  • 使用Mockito针对多线程场景编写单元测试

    Mockito是一个Java的Mocking框架,主要用于编写单元测试。针对多线程编程的单元测试,可以使用Mockito的一些特性和技巧来完成。  Mockito支持异步调用技术,可以使用Mockito.when().thenReturnAsync()方法来模拟异步调用的返回值。这样可以模拟多线程编程的情况。 例如,假设有一个异

    2024年02月09日
    浏览(46)
  • 【Blender】使用 Microsoft Visual Studio Code 作为外部 IDE 来编写 Blender 脚本/附加组件

    Blender 有自己的内置文本编辑器,用于编写脚本和附加组件,但在外部 IDE 中开发它们非常方便,为用户提供更多功能,例如自动完成、语法高亮、与版本控制系统和其他工具的集成使开发更快更容易。 这些 IDE 之一是 Microsoft 的 Visual Studio Code。这是一个免费的通用环境 ,支

    2024年02月04日
    浏览(55)
  • C++ 测试框架 GoogleTest 初学者入门篇 丙

    *以下内容为本人的学习笔记,如需要转载,请声明原文链接 微信公众号「ENG八戒」https://mp.weixin.qq.com/s/RIztusI3uKRnoHVf0sloeg 开发者虽然主要负责工程里的开发任务,但是每个开发完毕的功能都是需要开发者自测通过的,所以经常会听到开发者提起单元测试的话题。那么今天我就

    2023年04月15日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包