GTest学习笔记(一)
环境准备:CMake+Visual Studio
原博客: (20条消息) 记gtest1.10.0安装过程及简单使用_wingrez的博客-CSDN博客
使用GTest搭建一个简单的单元测试
1.下载GTest release-1.10.0源码
GitHub - google/googletest at release-1.10.0
2.生成测试所需的lib文件
2.1使用CMake构建gtest.sln
在下图路径下进入Powershell
执行下列指令
$ mkdir build
$ cd build
$ cmake ..
2.2 使用VS生成解决方案
注意配置要一致(我使用的是Debug x64)
项目属性/C/C++/代码生成/运行库:多线程调试(/MTd)
生成成功后,build/lib/Debug下会出现lib文件
3.搭建测试项目
3.1创建一个控制台应用项目
3.2配置项目属性
Debug+x64+MTd
添加附加包含目录
我之前看示例中附加包含目录只到"D:\workspace\GoogleTest\googletest-release-1.10.0\googletest-release-1.10.0\googletest\include"这一层,然后在引用的时候使用"include<gtest/gtest.h>";然后我就自己替换成了"D:\workspace\GoogleTest\googletest-release-1.10.0\googletest-release-1.10.0\googletest\include\gtest",在引用的时候直接"include<gtest.h>",然后就发现报错了,出错结果如下:
将附加目录修改回"D:\workspace\GoogleTest\googletest-release-1.10.0\googletest-release-1.10.0\googletest\include",引入头文件的路径也修改为"include<gtest/gtest.h>",然后部分的出错信息就消失了,效果如下:
还有错误是因为return RUN_ALL_TESTS忘记加括号了,应该是return RUN_ALL_TESTS()
添加附加依赖项
3.3测试代码
addIntegers.h
#pragma once
#include <iostream>
using namespace std;
int add(int a, int b)
{
return a + b;
}
test.cpp
#include <gtest/gtest.h>
#include"addIntegers.h"
TEST(testCase,test0)
{
EXPECT_EQ(3,add(1,2));
}
TEST(testCase, test1)
{
EXPECT_EQ(11, add(12, 3));
}
Project1.cpp
#include <gtest/gtest.h>
int main(int argc,char **argv)
{
testing::InitGoogleTest(&argc,argv);
return RUN_ALL_TESTS();
}
3.4运行结果
内容如有错误,敬请指正!
版权归原作者 阿莫12138 所有, 如有侵权,请联系我们删除。