环境准备
- Windows 10
- Code::Blocks 20.03
- Google Test 1.7.0
- CMake 3.11.0
编译GoogleTest
一、创建一个工作目录D:\gtest,将刚下载的Google Test 1.7.0、CMake 3.11.0的压缩包解压到刚创建的工作目录。
二、进入CMake文件夹的bin下,运行cmake-gui.exe,然后选择填入相关信息:
- where is the source code:D:\gtest\googletest-release-1.7.0
- where to build the binaries:D:\gtest\codeblocks-mingw
三、点击Configure按钮后,选择项目生成器CodeBlocks - MinGW Makefiles,然后点击Finish。
四、回到主界面配置完成后勾选 gtest_disable_pthreads,再点击Generate。
注意,如果弹出如下图异常窗口,可通过添加CodeBlock应用目录路径(如:C:\Program Files\CodeBlocks)到环境变量Path中解决异常。
五、在D:\gtest\codeblocks-mingw下,找到生成的gtest.cbp文件,用CodeBlocks打开gtest.cbp文件,然后点击齿轮按钮build成功即可。
配置CodeBlocks
一、打开CodeBlocks,点击菜单栏Settings->Compiler…
二、在Compiler settings -> Compiler Flags选项卡中勾选-std=gnu++11:
三、在Linker settings->Other linked options中,添加文本-lgtest:
四、在Search directories->Compiler选项卡中,添加目录路径D:\gtest\googletest-release-1.7.0\include:
五、在Search directories->Linker选项卡中,添加目录路径D:\gtest\codeblocks-mingw(也就是GoogleTest编译后所在目录路径):
单元测试
一、创建一个名为HelloGoogleTest的后台开发工程。
二、添加如下测试代码:
#include <iostream>
#include<gtest/gtest.h>using namespace std;int add(int a, int b)
{return a+b;
}TEST(addtest, HandleNoneZeroInput)
{EXPECT_EQ(14, add(4, 10));EXPECT_EQ(-2, add(-3, 1));
}int main(int argc, char *argv[])
{cout << "Hello world!" << endl;testing::InitGoogleTest(&argc, argv);return RUN_ALL_TESTS();}
三、测试结果
参考资料
- codeblocks配置单元测试框架(GoogleTest)
- codeblocks+Mingw 下配置开源c++单元测试工具 google test
- Code Blocks+gtest环境配置
- 在Codeblocks下配置GoogleTest单元测试工具