gTest简单应用

Gtest源码下载路径(需要梯子):http://code.google.com/p/googletest/

下载后进行解压,压缩后的目录如下图

windows下用户用vs打开 最后2010以上版本 工程目录地址看下图

打开后直接编译注意  如果你的工程目录是debug gtest便宜的时候也要debug并且  64位和32位要一致。

一般gtest debug生成的最后都带个d(gtestd.lib),release生成的不带d(gtest.lib)

还有一点需要注意生成的时候你看你需要先确定一下你的工程运行库是什么样的gtest要与之一致(不一致的话会有警告,暂时还不知道会有什么问题)

编译好之后只要把就开始gtest之旅了

 

首先创建一个工程设置库的目录环境

然后将库加入附加依赖项

将gtest的头文件目录地址加进来  googletest-master\googletest\include 目录下的文件拷贝到你写的目录的位置

这样环境就配好了开始写个代码进行测试

function.h

#pragma once

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

main.cpp

#include "stdafx.h"
#include "function.h"
#include <iostream>

TEST(fun, add)
{
	EXPECT_EQ(2, add(2, -1)) << "test hello world";
	EXPECT_EQ(5, add(2, 3));
}
TEST(fun1, add)
{
	EXPECT_EQ(2, add(2, -1));
	EXPECT_EQ(5, add(2, 3));
}
TEST(fun3, add)
{
	EXPECT_EQ(3, add(2, -1));
	EXPECT_EQ(4, add(2, 3));
}


int main(int argc, char* argv[])
{
	
	testing::GTEST_FLAG(output) = "xml:";
	::testing::InitGoogleTest(&argc, argv);
	RUN_ALL_TESTS();
	system("pause");
	return 0;
}

我这里加了预编译头文件。 

#include “stdafx.h"

#pragma once
#include "gtest/gtest.h"

说明一下  EXPECT_EQ就是判定add(2,-1)这个函数的执行结果是否等于1 这个执行参数,  如果你把1改成2它就会报错并打印出来

执行的时候这里更改一下输入参数

--gtest_filter=fun.*  意思是选择部分用例执行, 这里fun.*代表的是执行fun的部分用力, 所以执行的时候只执行了TEST(fun, add)这个函数 你也可以去掉 去掉的话所有的都会执行

执行结果如下图

因为我执行的是这个TEST(fun, add)

这个add(2, -1) = 1  但第一个参数是2 所以不对, 他就会把log打印出来。 << 就是把一些备注信息也打印进去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值