• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

GTest学习笔记一

武飞扬头像
阿莫12138
帮助1

GTest学习笔记(一)

环境准备:CMake Visual Studio

使用GTest搭建一个简单的单元测试

1.下载GTest release-1.10.0源码

GitHub - 谷歌/谷歌test 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\谷歌test-release-1.10.0\谷歌test-release-1.10.0\谷歌test\include"这一层,然后在引用的时候使用"include<gtest/gtest.h>";然后我就自己替换成了"D:\workspace\GoogleTest\谷歌test-release-1.10.0\谷歌test-release-1.10.0\谷歌test\include\gtest",在引用的时候直接"include<gtest.h>",然后就发现报错了,出错结果如下:

学新通

将附加目录修改回"D:\workspace\GoogleTest\谷歌test-release-1.10.0\谷歌test-release-1.10.0\谷歌test\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运行结果

学新通

内容如有错误,敬请指正!

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgijjki
系列文章
更多 icon
同类精品
更多 icon
继续加载