当前位置: 首页 > ai >正文

GoogleTest:GMock初识

项目通常是多人并行开发的,有的时候需要使用别人开发的接口,但是在测试的时候却不一定都已经开发完成了,这个时候可以使用GMock进行模拟。

1.别人开发的接口

//not_ready_class.hpp
#include <string>class Person {
public:virtual std::string info() = 0;
};

2.使用别人的接口

//use_class.hpp
#include <iostream>
#include "not_ready_class.hpp"std::string getPersonInfo(Person* p) 
{return p->info();
}

3.通过gmock模拟实现

//class_api_ut.cpp
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include "use_class.hpp"class PersonMock : public Person {
public:MOCK_METHOD0(info, std::string());
};TEST(PersonMock, personInfo)
{PersonMock person;
http://www.xdnf.cn/news/3987.html

相关文章:

  • 嵌入式开发学习日志Day13
  • window 系统 使用ollama + docker + deepseek R1+ Dify 搭建本地个人助手
  • C++笔记之接口`Interface`
  • 恶心的win11更新DIY 设置win11更新为100年
  • 《赤色世界》彩蛋
  • 数据封装的过程
  • 分析atoi(),atol()和atof()三个函数的功能
  • 【今日三题】小红的口罩(小堆) / 春游(模拟) / 数位染色(01背包)
  • 【Bootstrap V4系列】学习入门教程之 组件-卡片(Card)
  • Linux怎么更新已安装的软件
  • sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama解释这行代码的含义
  • 1.openharmony环境搭建
  • osquery在网络安全入侵场景中的应用实战(二)
  • 关于毕业论文,查重,AIGC
  • QT6 源(78):阅读与注释滑动条 QSlider 的源码,其是基类QAbstractSlider 的子类,及其刻度线的属性举例
  • 算法热题——等价多米诺骨牌对的数量
  • 【实战教程】React Native项目集成Google ML Kit实现离线水表OCR识别
  • 【云备份】服务端业务处理模块设计与实现
  • 2025-04-18-文本相似度-菜鸟
  • LLM(17):计算所有输入 token 的注意力权重
  • 【C语言练习】023. 编写条件编译代码
  • 高速互联技术:NVLink和PCIe有什么区别
  • 信息系统项目管理师-软考高级(软考高项)​​​​​​​​​​​2025最新(七)
  • 深度学习系统学习系列【4】之反向传播(BP)四个基本公式推导
  • Jogging(ABC249-A-竞赛题解)
  • 【QT】QT安装
  • ​亚马逊云服务器技术全景解析:从基础架构到行业赋能​
  • 42. 接雨水(相向双指针/前后缀分解),一篇文章讲透彻
  • 从代码学习深度学习 - 目标检测前置知识(二) PyTorch版
  • uniapp 云开发全集 云开发的概念