【注】在 GTest的安装与使用 (https://www.cnblogs.com/helloworldcode/p/9606838.html) 的基础上进行了小部分修改补充
下载gtest,release-1.8.0
git clone https://github.com/google/googletest
gtest编译
cd googletest
生成Makefile文件(先安装cmake,ubuntu系统:apt install cmake, windows系统:下载cmake-3.18.4-win32-x86.zip,解压并将其中的bin目录文件拷贝到mingw32/bin目录下,share目录文件拷贝到mingw32/share目录下),继续输入命令编译:
ubuntu系统: cmake CMakeLists.txt
windows系统: cmake -G"MinGW Makefiles"-DCMAKE_CXX_FLAGS=-std=c++11
执行make,生成两个静态库:libgtest.a libgtest_main.a
ubuntu系统: make
windows系统: mingw32-make
拷贝到系统目录,注意,如果下述目录位置在不同版本位置有变动,用find . -name "libgtest*.a" 找到位置
ubuntu系统:
cp ./lib/libgtest*.a /usr/lib
cp –r ./googletest/include/gtest /usr/include/
windows系统:
IDE上配置gtest库名、库搜索路径和头文件搜索路径
检查是否安装成功
可以写一个简单的测试代码如下:
#include<gtest/gtest.h>
int add(inta,intb){
returna+b;
}
TEST(testCase,test0){
EXPECT_EQ(add(2,3),5);
}
int main(intargc,char**argv){
testing::InitGoogleTest(&argc,argv);
returnRUN_ALL_TESTS();
}
在该文件的终端输入编译指令:
$ g++ -o sample sample.cpp -lgtest -lpthread
$ ./sample
即得到如下显示结果:
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from testCase
[ RUN ] testCase.test0
[ OK ] testCase.test0 (0 ms)
[----------] 1 test from testCase (0 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (0 ms total)
[ PASSED ] 1 test.
参考:
1. cmake-3.18.4-win32-x86.zip下载地址
https://cmake.org/files/v3.18/cmake-3.18.4-win32-x86.zip
https://www.cnblogs.com/helloworldcode/p/9606838.html
https://www.cnblogs.com/fyly/articles/10667782.html
4. 在mingw项目中引入googletest
https://blog.csdn.net/vinson0526/article/details/50829715
网友评论