Google Test
开源构建状态
未来计划
1.8.x 版本发布
1.8.x 是与 C++11 编译器之前的版本兼容的最后一个发布版本。1.8.x 版本将不接受任何新功能请求,并且只有证明为“关键”的 bug 修复请求才会被接受。
1.8.x 之后
正在进行的改善/整理/支付技术债务的工作。当这项工作完成时,将有一个标记为 1.9.x 的版本发布
1.9.x帖子
1.9.x版本的googletest将遵循Abseil Live at Head哲学
欢迎使用Google Test,Google的C++测试框架!
此存储库是以前分开的GoogleTest和GoogleMock项目的合并。由于它们之间关系紧密,因此在维护和发布它们时保持一起是有意义的。
请订阅[email protected]的邮件列表,以便提问、讨论和开发。
入门指南
Google Test的信息可在Google Test入门指南文档中找到。
Google Mock是Google Test的扩展,用来编写和使用C++模拟类。请参阅独立的Google Mock文档。
更详细的googletest文档在其内部的googletest/README.md文件中。
功能
- 一个xUnit测试框架。
- 测试发现。
- 丰富的断言集。
- 用户自定义断言。
- 死亡测试。
- 严重和非严重失败。
- 值参数化测试。
- 类型参数化测试。
- 运行测试的各种选项。
- 生成XML测试报告。
平台
Google test已在各种平台中使用
- Linux
- Mac OS X
- Windows
- Cygwin
- MinGW
- Windows Mobile
- Symbian
- PlatformIO
谁在使用Google Test?
除了Google内部许多项目外,Google Test 还被以下著名项目使用
- Chromium项目(Chrome浏览器和Chrome OS背后的项目)。
- LLVM 编译器。
- Protocol Buffers,Google的数据交换格式。
- OpenCV 计算机视觉库。
- tiny-dnn:仅包含头文件,无依赖性的C++11深度学习框架。
相关开源项目
GTest Runner 是一个基于Qt5的自动化测试运行器和图形用户界面,具有强大的Windows和Linux平台特性。
Google Test UI 是一个测试运行器,可以运行测试二进制文件,允许您通过进度条跟踪其进度,并显示测试失败的列表。单击其中一个将显示错误文本。Google Test UI是用C#编写的。
GTest TAP Listener 是Google Test的事件监听器,实现了TAP协议以输出测试结果。如果您的测试运行器理解TAP,您可能会觉得它很有用。
gtest-parallel 是一个测试运行器,可以从您的二进制文件并行运行测试,以提供显著的加速。
GoogleTest Adapter 是一个VS Code扩展,允许您以树状视图查看Google Tests,并运行和调试您的测试。
要求
Google Test 被设计为具有相对最低的要求,以构建和与项目一起使用,但也有一些要求。如果您在自己的平台上遇到任何问题,请联系[email protected]。欢迎提交修复它们的补丁!
构建要求
以下是从源包构建和使用 Google Test 的基本要求
贡献更改
请阅读 CONTRIBUTING.md
以获取有关如何向该项目贡献的详细信息。
快乐的测试!