• 2024-11-10如何使用gtest编写C++单元测试代码
    目录一.为什么要编写单元测试代码二.gtest是什么三.下载四.使用方法4.1场景一4.2场景二4.3场景三五.其他一.为什么要编写单元测试代码相信很多人都不喜欢编写单元测试代码,但是单元测试对我们来说真的很重要,单元测试可以暴露出我们自己的代码的内部问题,从而保证我
  • 2024-11-10通过C++跨平台的预编译宏来区分不同的操作系统:Win32/Win64/Unix/Linux/MacOS
    因为C++具有跨平台的特性,所以有些需求一套代码就多端使用,比如我最近在学习的OpenGLES。但是,不同平台还是具有一定差异性,所以我们首先得判断出是什么平台?比如iOS系统和Android系统。那么如何判断呢?我们接着往下看!要检查C或C代码中主机的操作系统,我们需要检查编
  • 2024-07-28VS2022创建C C++ GTEST工程
    原因需要对带代码进行单元测试,选择在Visualstudio中使用GTEST框架。实施创建一个常规的控制台可执行程序。然后使用NUGET安装包安装GTEST头文件和动态库,同时安装GTESTADAPTER。安装可能提示找不到包源,此时需要根据提示配置一下,注意通配符很关键,不要问为甚吗,就是有bug
  • 2024-07-15goframe gfile用法
            GoFrame的 gfile  模块提供了一套丰富的文件和目录操作方法,使得文件系统的操作变得更加简单易用。以下是一些 gfile  的常用方法及其用法:1. 获取绝对路径:使用 Abs  函数可以获取给定路径的绝对表示形式,如果路径不是绝对路径,它会与当前工作目录
  • 2024-07-06windows下C++配置googletest过程记录
    文章目录下载googletest将googletest解压到项目目录并创建build文件夹编译googletest在项目的CMakeLists.txt文件中添加相关依赖编写测试并执行参考下载googletestReleasev1.14.0·google/googletest·GitHub将googletest解压到项目目录并创建build文件夹在g
  • 2024-06-15C/C++生成单元测试覆盖率
    生成单元测试覆盖率前文提到添加了编译参数-fprofile-arcs、-ftest-coverage已经生成了gcno文件,单元测试运行后也产生了gcda文件。并且我们已经安装好lcov,那么该如何使用lcov来生成覆盖率报告呢?进入到我们生成了*.gcno*.gcda文件的目录收集覆盖率数据(*.gcda)并
  • 2024-06-12【CMake系列】10-cmake测试集成googletest与第三方库自动化构建
    cmake测试,使用ctest可能不能满足我们的需求,需要我们使用更为强大的第三方测试框架,如googletest,完成项目中的测试工作本篇文章将第三方测试框架googletest,引入,同时也可以作为关于第三方包自动化构建的很好示例,值得学习本专栏的实践代码全部放在github上,欢迎star!!!如
  • 2024-03-20开发之单元测试—Test_C++的gtest单元测试
    单元测试测试的本质其实都是一样的,都是通过给定参数来执行函数,然后判断函数的实际输出结果和期望输出结果是否一致测试框架gtest采用的是xUnit架构,JUnitPyUnit:PyUnit主要用于进行白盒测试和回归测试C++测试gtest单元测试是Google的一套用于编写C++测试的框架,可以运
  • 2024-01-01单元测试2-gmock及MOCK_METHOD学习
    转自:https://www.cnblogs.com/welkinwalker/archive/2011/11/29/2267225.html,https://www.cnblogs.com/pugang/p/9500352.html1.介绍#include<gmock/gmock.h>#include<string>classFooInterface{public:virtual~FooInterface(){}public:
  • 2023-12-20cmake应用:集成gtest进行单元测试
    编写代码有bug是很正常的,通过编写完备的单元测试,可以及时发现问题,并且在后续的代码改进中持续观测是否引入了新的bug。对于追求质量的程序员,为自己的代码编写全面的单元测试是必备的基础技能,在编写单元测试的时候也能复盘自己的代码设计,是提高代码质量极为有效的手段。在本系
  • 2023-10-27Google Test 自带一些小功能
    控制台彩色打印TEST(test,colored_print){ usingnamespacetesting::internal; std::map<GTestColor,std::string>ColorMap= { {COLOR_RED,"红色"}, {COLOR_GREEN,"绿色"}, {COLOR_YELLOW,"黄色"} }; for(autocolor:ColorMap)
  • 2023-10-16google gtest框架入门使用案例
    通过本文可以收获:googlegtest急速入门、googlegtest资源网站。googlegtest是什么googlegtest是谷歌开源的c++单元测试框架,非常的好用。起码个人感觉和springboot自带的测试框架功能差不太多。安装略过,请参考:GitHub-google/googletest:GoogleTest-GoogleTesting
  • 2023-09-27CLion中配置gtest
    环境:Windows,cmake,gcc,g++,CLion一、下载源码二、解压并构建(我是怎么知道的?)进入处于解压目录的cmd窗口输入以下命令cmake以下使用以下命令构建100%即构建成功找到这些东西,复制到CLion项目中,文件结构在后面我这里是先创建一个gtest目录,在gtest目录下在创建一个lib
  • 2023-09-22gtest测试框架
    GoogleTest简单使用googleTest是谷歌公司发布的一个跨平台的C++单元测试框架两种断言致命断言ASSERT_*:当断言失败时,产生致命错误,并终止当前函数非致命断言EXPECT_*:当断言失败时,产生非致命错误,并不会终止当前函数常用的断言ASSERTEXPECTVerifiesASSERT_TRUE(cond
  • 2023-09-20Google Test 自带一些小功能
    控制台彩色打印TEST(test,colored_print){ usingnamespacetesting::internal; std::map<GTestColor,std::string>ColorMap= { {COLOR_RED,"红色"}, {COLOR_GREEN,"绿色"}, {COLOR_YELLOW,"黄色"} }; for(autocolor:ColorMap
  • 2023-08-06bazel test 编译失败:googletest、gtest 报错
    问题描述bazeltest遇到很多奇怪的编译错误,报错位置位于“googletest”目录,而且没有修改过googletest源码:ERROR:/bazel_cache/output_user_root/.../external/google/BUILD.bazel:80:11:Compilinggoogletest/src/gtest-matchers.ccfailed:(Exit1):gccfailed:errore
  • 2023-08-06bazel 使用 gtest/gmock 报错 Constraints from @bazel_tools//platforms have been removed
    问题描述运行bazeltest命令,遇到错误:“Constraintsfrom@bazel_tools//platformshavebeenremoved.Pleaseuseconstraintsfrom@platformsrepositoryembeddedinBazel,orpreferablydeclaredependencyonhttps://github.com/bazelbuild/platforms.Seehttps://gi
  • 2023-07-23 Ubuntu安装Gtest
    安装运行过程概述最近要使用到Gtest做一些测试,网上找了很多方法,感觉都不全,半截子,一时半伙我也是很蒙蔽,所以这里做一个Gtest安装步骤的讲解。备注:本测试在Linux系统下运行,默认已经配置好C++编译环境。获取安装包两种方式方案一:这种方案能下载下来,但是我没有安装成功 gitc
  • 2023-06-15Google Test(GTest)和Google Mock(GMock)入门简介
    GoogleTest1.自定义错误输出:ASSERT_EQ(x.size(),y.size())<<"Vectorsxandyareofunequallength";for(inti=0;i<x.size();++i){EXPECT_EQ(x[i],y[i])<<"Vectorsxandydifferatindex"<<i;}2.ASSERT_
  • 2023-06-15GTest测试框架中的friend(友元)使用注意点
    为了测试MyClass,写了一个测试caseTEST_F(MyClassTest,method){}GoogleTest框架中使用这样的测试单元时,会自动生成一个叫做MyClass_method_Test的类,在MyClass中声明友元的正确方法是:private:friendclassMyClass_method_Test;othervar...goeshere而不是:private:
  • 2023-06-12gtest框架的介绍与应用
    【摘要】在本文中,作者根据之前使用gtest框架进行测试的经验,总结了一些使用方式和案例。在这些案例中,我们可以了解到gtest框架的基本使用方法以及在我们日常测试中的应用,同时也能促进我们对于百度的btest的了解。在我们之后的测试工作中,可以根据各个项目的特点以及gtest、btest等
  • 2023-06-11玩转Google开源C++单元测试框架Google Test系列(gtest)(总)
    前段时间学习和了解了下Google的开源C++单元测试框架GoogleTest,简称gtest,非常的不错。我们原来使用的是自己实现的一套单元测试框架,在使用过程中,发现越来越多使用不便之处,而这样不便之处,gtest恰恰很好的解决了。其实gtest本身的实现并不复杂,我们完全可以模仿gtest,不断的完善我们
  • 2023-05-01gtest学习
    学习gtest测试了解单元测试单元:函数、类等gtestgtest是一个跨平台的(Liunx、MacOSX、Windows、Cygwin、WindowsCEandSymbian)C++单元测试框架,由google公司发布。gtest是为在不同平台上为编写C++测试而生成的。它提供了丰富的断言、致命和非致命判断、参数化、”死亡测
  • 2023-04-16googleTest demo
    googletest的目录在的官方目录在https://github.com/google/googletest.git。作为用户,googleTest的库可以认为提供了两个东西:各种宏,如TEST,TEST_F,通过#include"gtest/gtest.h",即可使用。gtest_main的库libgtest_main.a,即提供了一个主函数,可以和一个测试套的“容器”。静态库
  • 2023-04-15C++ 测试框架 GoogleTest 初学者入门篇 丙
    theme:channing-cyan*以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/RIztusI3uKRnoHVf0sloeg开发者虽然主要负责工程里的开发任务,但是每个开发完毕的功能都是需要开发者自测通过的,所以经常会听到开发者提起单元测试的