int main() {
testing::InitGoogleTest();
return RUN_ALL_TESTS();
googletest(也称gtest)是由Google测试技术团队开发的测试框架。为c/c++代码提供了一套优秀的单元测试解决方案。本文介绍使用googletest在windows下从零搭建自己的单元测试工程。0. 环境准备系统:Windows10vscode: https://code.visualstudio.com/mingw-64:https://www.mingw-w64.org/downloads/cmake: https://cmake.org/download/googletes
之前也接触过googleTest但是一直没有弄好,总是出各种各样的错误,今天下午再试了试结果还给搞定了。
首先是从GitHub上下载Googletest的源码,用cmake进行编译,准备工作就是先安装好cmake,这个很简单。然后就是通过cmake来编译googletest。这个折腾了我半天,这里我就再演示一边。我把编译好的Googletest删除重新弄一下。
下载googletest
GitHub - google/googletest: GoogleTest - Google Test..
【gTest】gtest简介及简单使用
gtest是一个跨平台(Liunx、Mac OS X、Windows、Cygwin、Windows CE and Symbian)的C++测试框架,有google公司发布。gtest测试框架是在不同平台上为编写C++测试而生成的。
从http://code.google.com/p/googletest/downloads/detail?name=gtest-1.7.0.zip&can=2&q=下载最新的gtest-1.7.0版本
在Windows下编
googletest
googletest 是一个由 Google 的测试技术团队开发的测试框架,它考虑到了谷歌的特定需求和限制。无论你使用的是 Linux、Windows 还是 Mac,只要你编写 C++ 代码,googletest 都可以帮到你。它支持任何类型的测试,不只是单元测试。
googletest安装
#下载gtest,release-1.8.0
git clone https://github.com/google/googletest
# gtest编译
cd googletest
#生成Makefile文件(先安装cmake,brew install cmake),继续输入命
得益于和萱哥关于单元测试的聊天,让我开始想要了解Google的单元测试框架GoogleTest;以前基于C#反射特性Demo过一个C#的单元测试框架(),所以更想明白Google
Test测试框架的实现机制;这期间搞过一段Python,看Python文档时也看到相关的单元测试框架PyUnit,但没有深入研究,有时间深入研究一下。自动化测试框架,主要目的就是自动化调用执行某些测试用例,将执行结果与目标结果进行比较,用以达到测试特定目标的目的。而测试用例的针对目标可能是函数接口,功能
我尝试了一套的gtest配置操作,方法不太主流:
1. 在windows万能的visual studio里建立cmake工程,而不是googletest工程或者一般的空工程。
2. 将gtest作为第三方库引入时,没有把gtest的源码作为子模块和自己的代码一起cmake,而是先把gtest独立build出库文件,再连到自己的代码上。
现在把整个操作过程记录在这里。
Windows下cmake安装
cmake官网
选择最新版的binary
1. 下载 gtest 源码包,并解压,如:/home/hdc/gtest-1.7.0;
2. 编译 gtest 动态库,进入 gtest-1.7.0 目录,编辑 CMakeLists.txt,修改如下几行:
10 option(BUILD_SHAR
首先要说的是,这种编译与安装不是必须的,用户可以自己下载protoc的二进制文件直接使用。因为开发和调试的原因,我经常反复需要编译不同版本的protobuf,例如NCNN用的protobuf3.4.0。因为重复的过程中自己也没有详细记录过,所以这里记录一下备忘。
(I)第一步,下载gmock。
https://codeload.github.com/google/googletest/tar.gz/refs/tags/release-1.11.0https://codeload.github.com/g
Google Test需要编译,同时确保头文件可以被编译器找到。
使用cmake编译:
git clone https://github.com/google/googletest.git -b release-1.10.0
cd googletest # Main directory of the cloned rep