mockcpp:基于C/C++的测试框架项目

mockcpp是一个轻量级的C++单元测试框架。此fork用于支持MindStudio等项目。

分支5Tags2

mockcpp --- C/C++ 模拟框架

https://github.com/sinojelly/mockcpp https://gitee.com/sinojelly/mockcpp

mockcpp 是一个类 jmock 的通用 C/C++ 模拟框架,它不使用复杂的模板技术,因此不会带来沉重的编译开销。

C/C++ 测试框架

本项目提供了两款 C/C++ 测试工具。

名称 描述 路径
mockcpp C/C++ 模拟框架 mockcpp
testngpp C/C++ 测试框架 mockcpp/tests/3rdparty/testngpp

使用这些工具的示例项目位于:
https://gitee.com/sinojelly/testngpp-mockcpp-sample

您可以将 mockcpp 与其他 C/C++ 测试框架配合使用,例如 gtest、Catch2、CppUTest 等。相关示例项目位于:
https://gitee.com/sinojelly/gtest-with-mockcpp
https://gitee.com/sinojelly/catch2-with-mockcpp

您可以使用 mockcpp 和 testngpp 的预构建库及头文件,也可以直接使用其源代码。

如果使用预构建库,请确保它们与被测项目是在相同的操作系统和编译器环境下构建的。

mockcpp 特性

操作系统 编译器 虚函数模拟 全局函数模拟 重载函数模拟
Linux GCC 支持 支持 支持
Win10 MinGW 支持 支持 支持
Win10 VS2019 支持 不支持 支持

testngpp 特性

操作系统 编译器 基本功能 内存泄漏检查 沙箱运行 参数化测试
Linux GCC 支持 支持 支持 支持
Win10 MinGW 支持 不支持 不支持 支持
Win10 VS2019 支持 支持 支持 支持

示例代码

Testngpp 参数化测试示例

FIXTURE(DataDrivenTest)
{
	DATA_PROVIDER( mydata, 3
		, DATA_GROUP(1, 2, 3) 
		, DATA_GROUP(77, 20, 97) 
		, DATA_GROUP(101, 503, 604));

	// @test(data="mydata")
	PTEST( (int a, int b, int c), this is a parameterized test)
	{
		ASSERT_EQ(c, add(a, b));
	}
};

用户文档

新构建系统说明(推荐用户和开发者阅读)
Mockcpp 英文手册
Mockcpp 中文手册
Mockcpp 简明使用说明(中文,推荐阅读)
Testngpp 简明使用说明(中文,推荐阅读)
Testngpp 用户手册(中文)

开发者文档

Mockcpp 高级指南
Mockcpp 版本历史
软件架构(中文)
Mockcpp 配置参数
Mockcpp 构建指南(内容稍旧)
Mockcpp 安装指南(内容旧)

其他参考文档

Testngpp MSVC 安装说明(内容旧)
Testngpp 介绍

可向当前维护者发送邮件至 darwin.yuan@gmail.comsinojelly@163.com

项目介绍

mockcpp是一个轻量级的C++单元测试框架。此fork用于支持MindStudio等项目。

定制我的领域

下载使用量

0

项目总下载次数(含Clone、Pull、 zip 包及 release 下载),每日凌晨更新

语言类型

C++82.02%
C10.76%
CMake2.51%
Python1.37%
PowerShell1.32%