1. 简介
gtest是谷歌发布的、开源的单元测试框架,适用平台有Liunx、Mac OS X、Windows、Cygwin、Windows CE and Symbian, 适用语言C++。可以从http://code.google.com/p/googletest/downloads/detail?name=gtest-1.7.0.zip&can=2&q=下载版本
2. 编译(以Windows为例)
下载googletest-master.zip并解压,进入目录msvc打开工程,选择相应平台、版本后,右键gtest工程重新生成。编译成功后,拷贝include目录,以及gtest.lib文件至你的工程。
3. 使用
简单使用可以参考http://blog.csdn.net/fengbingchun/article/details/39667571中的windwos示例。
批量执行case,如下示例:
//
//\
//\ 单元测试case,可以是一个接口的一系列测试case
//\ 2017-05-19 cwp
//\ Demo.h
//\
//
#ifndef __DEMO_H__
#define __DEMO_H__
#include "gtest/gtest.h"
class TestDemo : public testing::Test
{
protected:
virtual void SetUp()
{
}
virtual void TearDown()
{
}
private:
};
#endif // __DEMO_H__
// Demo.cpp
#include "Demo.h"
TEST_F(TestDemo, case1)
{
EXPECT_EQ(5, 5);
}
//
//\
//\ gtest使用Demo
//\ 2017-05-19 cwp
//\ main.cpp
//\
//
#include <stdio.h>
#include <stdlib.h>
#include "gtest/gtest.h"
class DemoEnvironment : public testing::Environment
{
public:
virtual void SetUp()
{
printf("CWPEnvironment SetUp\n");
}
virtual void TearDown()
{
printf("CWPEnvironment teardown\n");
}
};
int main(int argc, char *argv[])
{
// 批量执行 TestDemo类中所有case
testing::GTEST_FLAG(filter)="TestDemo.case1:TestDemo.case*";
testing::AddGlobalTestEnvironment(new DemoEnvironment);
testing::InitGoogleTest(&argc, argv);
RUN_ALL_TESTS();
return 0;
}
需要在属性->c/c++->常规添加gtest头文件路径,属性-->连接器->常规->附加库目录添加lib库路径,以及属性-->连接器->输入->附加依赖库添加gtest.lib依赖库.
运行结果:
完整程序可自行下载: http://download.csdn.net/detail/pengwchen/9846498