4.在linux下使用cmake编译gtest测试
在test7这个目录下,有如下文件:
4.1.build目录,存放编译信息,最后的可执行文件也在其中
4.2.include目录
4.2.1 gtest目录,目录中有gtest.h
4.2.2 max.h
#include <iostream>
using namespace std;
int max( int, int)
4.3.lib目录
有libgest.a文件
4.4.src目录,2个.cpp文件
main.cpp,main可以单独使用,也可以调用max函数
max.cpp,max函数
单独使用:main.cpp
#include <iostream>
using namespace std;
int main()
{ cout<<"hello world!\n";
return 0;}
调用max函数:main.cpp
#include "max.h"
int main()
{ int a;
a = max(5,8);
cout<<a<<endl;
return 0;}
max.cpp
#include "max.h"
int max(int a ,int b)
{ if (a>b) return a;
else return b;}
4.5.test目录,2个.cpp文件
main.cpp,初始化gtest啥的
test.cpp,测试函数
main.cpp:
#include "gtest/gtest.h"
#include "max.h"
int main(int argc,char* argv[])
//argc,参数的个数;argv,参数名;argv[0],测试名;argv[1]第一个参数名
{ testing::InitGoogleTest(&argc,argv);
Run_ALL_TESTS();
return 0;}
4.6.CMakeLists.txt
写到这里发现我脑子有坑,为什么我不截图呢??
在build下打开终端,输入
cmake ..
make //生成2个可执行文件timer(/src/mian.cpp)和timertest(测试函数)
./timer
./timertest