您的位置:首页 > 编程语言 > Go语言

windows下Google Test测试框架的环境搭建

2013-09-23 22:47 555 查看



一、前言

Google的开源C++单元测试框架Google Test,简称gtest,gtest提供了非常完善的功能,并且简单易用,极大的提高了编写测试案例的效率。利用现有的框架编写用例,只需使用一些简单的宏即可,TEST、TEST_F、TEST_P、EXPECT_*、ASSERT_*等。本文简单记录一下Gtest框架的获取、框架的搭建。

二、下载

下载地址 http://code.google.com/p/googletest/downloads/list
笔者使用的是gtest-1.6.0

三、静态库的生成

解压文件后,进入msvc文件夹,有如下文件



直接用VS打开工程文件(\msvc\gtest.sln),编译生成静态库。在配置管理器中设置,Debug模式下,生成的库为gtestd.lib ;Release模式下,生成的库为gtest.lib ,并自己需要的版本(64位 or 32位)。



上图配置生成64位的Debug静态库gtestd.lib

四、环境配置

在vs中建立一个新的win32控制台应用程序,然后设置属性。

1、设置头文件



笔者将下载、解压后的文件下的include,拷贝到新建的工程目录下(也可以使用绝对路径,建议使用相对路径)

2、设置依赖的静态库





笔者,分别设置了依赖的库路径及库名称,也可以直接在附加依赖库中使用路径加库名的方式

3、Runtime Library设置



注意:debug模式下,对应/MTD ;release模式下,对应MT

五、Demo

工程设置之后,我们来编写一个最简单测试案例测试。

main函数(testGoogleMain.cpp):

#include <iostream>
#include <gtest/gtest.h>

int main(int argc, char **argv)
{
std::cout << "Running main() from gtest_main.cc\n";

testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}

“testing::InitGoogleTest(&argc, argv);” :gtest的测试案例允许接收一系列的命令行参数,因此,我们将命令行参数传递给gtest,进行一些初始化操作。

“RUN_ALL_TESTS()” :运行所有测试案例

被测试函数(MyFunc.cpp):

#include "MyFunc.h"

int add(int x, int y)
{
return x + y;
}

被测函数头文件(MyFunc.h)

#ifndef _MYFUNC_H_
#define _MYFUNC_H_

int add(int x, int y);

#endif

测试案例MyFuncTest.cpp

#include "MyFunc.h"
#include <gtest/gtest.h>

TEST(MyMathTest, Positive)
{
EXPECT_EQ(3, add(1, 2));
}


完成之后,Ctrl+F5 生成结果,如果全部绿色表示执行成功。



六、总结

本文主要记录了,自己在搭建Gtest环境的时候,简单配置过程。

1、编译库文件

2、设置工程属性

3、编写测试案例
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: