20200507_googletest

69 篇文章 0 订阅
2 篇文章 0 订阅

20200507_googletest

每日小知识

gtest是一个跨平台的C++测试用例框架,由谷歌公司发布。

一、相关术语

原计划是写一个测试strcpy的用例的,但发现googletest用起来需要花一些功夫,所以本篇就先整理googletest的内容。

  • googletest
    C++测试用例框架。

  • 版本
    本文使用googletest版本【1.8.1】。
    VS使用VS2017,社区版本,15.9.13。

二、使用方法

使用gtest有两种方式,一种是编译动态库,一种是直接加载源代码。本文直接加载源代码编译。

1、下载googletest
https://github.com/google/googletest/releases这里找v1.8.1,然后下载zip包,因为我是windows系统。

2、新建空白工程
使用vs2017新建空白控制台工程googletest_demo1.sln。

解压zip包到目录googletest-release-1.8.1,这里我将该目录与sln保持同级。

3、设置包含目录
设置VS头文件包含目录:

$(SolutionDir)\googletest-release-1.8.1\googletest\include;$(SolutionDir)\googletest-release-1.8.1\googletest;

添加googletest/src中所有文件,然后移除【gtest-all.cc】【gtest_main.cc】。

4、编写main.cpp代码

#include "gtest/gtest.h"

int add_function(int a, int b);

TEST(TestCaseName, TestName)
{
	EXPECT_EQ(1, add_function(1, 2));	//错误演示
	EXPECT_EQ(4, add_function(2, 2));	//正确演示
}

int main(int argc, char* argv[])
{
	int iRet = 0;
	testing::InitGoogleTest(&argc, argv);
	return RUN_ALL_TESTS();	
}

int add_function(int a, int b)
{
	return a + b;
}

5、运行
打开cmd,在控制台运行该程序,即可看到运行结果。

[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from TestCaseName
[ RUN      ] TestCaseName.TestName
d:\01_tencent_git\00_csdndocs20200325\csdn_blog\2020\05\07_googletest\demo\googletest_demo1\googletest_demo1\demo1_main.cpp(7): error: Expected equality of these values:
  1
  add_function(1, 2)
    Which is: 3
[  FAILED  ] TestCaseName.TestName (1 ms)
[----------] 1 test from TestCaseName (2 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (6 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] TestCaseName.TestName

 1 FAILED TEST

本文归类

建议归类到【C++】。

明日计划

标题:写一个测试strcpy的测试用例
小知识:VS2017为什么没有使用gtest1.10以上版本。

参考文献:

GTest使用教程(一)-- 编译,安装GTest_会会会飞的鱼
https://blog.csdn.net/W_Y2010/article/details/84674115

今日收藏:

googletest
https://github.com/google/googletest

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丰哥86

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值