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

入门教程

Visual Studio 新建 GoogleTest项目,一路选默认参数

pch.h

cpp 复制代码
#pragma once

#include "gtest/gtest.h"

int add(int a, int b);

pch.cpp

cpp 复制代码
#include "pch.h"

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

test.cpp

cpp 复制代码
#include "pch.h"

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

编译运行

成功

[C++] gtest入门教程

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

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

在当前解决方案下,新建GoogleTest项目

引用自己要测试的工程,配置相关属性(C++ 附加包含目录等)

cpp 复制代码
#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生成

相关推荐
骄傲的心别枯萎19 分钟前
RV1126 NO.16:通过多线程同时获取H264和H265码流
linux·c++·音视频·rv1126
落羽的落羽23 分钟前
【C++】特别的程序错误处理方式——异常机制
开发语言·c++
空山新雨(大队长)32 分钟前
C 语言第一课:hello word c
c++·c·exe
春蕾夏荷_72829772535 分钟前
c++ 第三方库与个人封装库
c++·三方库
牵牛老人1 小时前
Qt C++ 复杂界面处理:巧用覆盖层突破复杂界面处理难题之一
数据库·c++·qt
云:鸢1 小时前
C语言链表设计及应用
c语言·开发语言·数据结构·链表
离越词2 小时前
C++day8作业
开发语言·c++·windows
MMjeaty2 小时前
deque容器
c++
CYRUS_STUDIO2 小时前
如何防止 so 文件被轻松逆向?精准控制符号导出 + JNI 动态注册
android·c++·安全
CYRUS_STUDIO2 小时前
C&C++ 代码安全再升级:用 OLLVM 给 so 加上字符串加密保护
c++·安全·llvm