`
andy136566
  • 浏览: 290473 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

gtest小试 第一个makefile

 
阅读更多

gtest编译:

http://www.linuxidc.com/Linux/2011-08/40946.htm

 

gtest将就着的一个流程 http://blog.163.com/xychenbaihu@yeah/blog/static/1322296552011357338290/

 

 

gtest自带了个makefile只能编译一个文件,要make其他的每次都要改,改了下,可以编译所有(注意路径)

GTEST_DIR = /home/andy/tools/gtest-1.5.0

SRC_CPP = $(wildcard /home/andy/gtest/src/*.cpp)
SRC_H = $(wildcard /home/andy/gtest/src/*.h)
SRC_DIR = /home/andy/gtest/src/
TEST_CPP = $(wildcard ./unittest/*.cpp)
SRC_OBJ_TEMP = $(subst .cpp,.o,$(SRC_CPP))
SRC_OBJ = $(notdir $(SRC_OBJ_TEMP))
TEST_OBJ_TEMP = $(subst .cpp,.o,$(TEST_CPP))
TEST_OBJ = $(notdir $(TEST_OBJ_TEMP))
MAIN_OBJ = $(subst .o,,$(TEST_OBJ))
CPPFLAGS += -I$(GTEST_DIR)/include

CXXFLAGS += -g -Wall -Wextra

GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
                $(GTEST_DIR)/include/gtest/internal/*.h

all : $(MAIN_OBJ)

clean :
	rm -f $(MAIN_OBJ) gtest.a gtest_main.a *.o

GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/src/*.h $(GTEST_HEADERS)

gtest-all.o : $(GTEST_SRCS_)
	$(CXX) $(CPPFLAGS) -I$(GTEST_DIR) $(CXXFLAGS) -c \
            $(GTEST_DIR)/src/gtest-all.cc

gtest_main.o : $(GTEST_SRCS_)
	$(CXX) $(CPPFLAGS) -I$(GTEST_DIR) $(CXXFLAGS) -c \
            $(GTEST_DIR)/src/gtest_main.cc

gtest.a : gtest-all.o
	$(AR) $(ARFLAGS) $@ $^

gtest_main.a : gtest-all.o gtest_main.o
	$(AR) $(ARFLAGS) $@ $^

$(SRC_OBJ) : $(SRC_CPP) $(SRC_H) $(GTEST_HEADERS)
	$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SRC_CPP)

$(TEST_OBJ) : $(TEST_CPP)  $(SRC_H) $(GTEST_HEADERS)
	$(CXX) $(CPPFLAGS) $(CXXFLAGS) -I$(SRC_DIR) -c $(TEST_CPP)

$(MAIN_OBJ) : $(SRC_OBJ) $(TEST_OBJ) gtest_main.o gtest_main.a
	$(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $@
 
分享到:
评论

相关推荐

    GTest使用手册 中文版本 使用VS编译

    本文将从 gtest 的基本使用开始介绍,包括下载、安装、编译、建立第一个测试 Demo 工程,以及编写一个最简单的测试案例。 一、初识 gtest gtest 是一个开源的 C++单元测试框架,由 Google 开源社区维护。gtest 的...

    cmke与ctest、gtest绑定使用

    `Google Test (gtest)`是Google开发的一个开源C++测试框架,它提供了丰富的断言和测试结构,便于编写单元测试。gtest支持测试用例、测试点、参数化测试、异常处理等特性,使得测试代码易于编写和维护。gtest测试可以...

    gtest demo

    我使用的源码是gtest-1.6.0,这下面有一个文件夹fused-src,下面的gtest中包含有gtest.h.gtest_main.cc,gtest-all.cc三个文件,这即是可重用的代码了,你可以把它们加入你的工程,然后写测试代码。之前下了份别人的...

    gtest的使用(Linux/Windows)方法介绍入门级

    1. **路径设置**:将 gtest 库放置在一个公共位置,并通过 Makefile 包含进来,便于编译。 2. **Makefile 示例**:使用 gtest_main.a 库可以简化测试过程,无需编写测试 main 函数。 3. **测试结果**:可以查看...

    gtest Demo

    gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest gtest

    gtest.zip框架

    `gtest.zip`框架是Google开发的一个C++测试框架,它为C++程序员提供了一种方便、灵活的方式来编写单元测试。这个框架的核心理念是使测试代码与应用程序代码一样可读、可维护。`gtest`提供了丰富的断言来检查程序运行...

    C语言 单元测试 gtest教程 ctestcode Unitest

    为了更好地理解gtest的使用,教程中可能包含了一个名为`gtesthelp.png`的图片,它可能展示了如何在代码中声明和运行测试用例的示例。而`ctest1.0.exe`可能是用于执行测试的可执行文件,可能使用了CTest,这是CMake的...

    gtest单元测试框架源码

    `gtest`,全称为Google Test,是Google开发的一个开源的C++测试框架,用于编写C++代码的单元测试。它提供了丰富的断言、测试套件、测试用例、参数化测试等功能,使得开发者能够轻松地编写和组织测试代码。下面我们将...

    vscode+gtest+cmake

    2. **Google Test (gtest)**:gtest是Google开发的一个开源单元测试框架,它使得C++的测试驱动开发(TDD)变得简单。gtest提供了丰富的断言来检查程序运行结果,支持参数化测试、测试套件和测试 fixture,方便编写...

    gtest.zip库

    1. **测试套件与测试用例**:gtest允许你组织测试为测试套件(test suites),每个套件包含多个测试用例(test cases)。测试用例可以有多个断言(assertions)来验证代码的行为。 2. **断言**:gtest提供了一组...

    gtest全套学习资料

    gtest是一个C++的单元测试库,它提供了丰富的断言(assertions)来检查程序的行为,如`EXPECT_EQ`用于比较值,`ASSERT_TRUE`用于判断条件等。gtest还支持测试用例(test cases)、测试点(test points)和参数化...

    gtest-1.3.0

    测试用例通过定义`TEST_F`宏来创建,其中第一个参数是测试固定装置(Fixture)类的名字,第二个参数是具体的测试点名字。固定装置类可以用来设置和清理测试环境。 对于复杂场景,`gtest`还支持参数化测试,这允许你...

    gtest有对类成员函数的例子

    2. **定义测试用例**:使用`TEST_F()`宏定义测试用例,第一个参数是测试类的名称,第二个参数是具体的测试用例名称。在测试用例中,我们可以调用类的成员函数并检查结果。 ```cpp TEST_F(MyClassTestFixture, ...

    gtest-1.5.0.zip

    `gtest-1.5.0.zip` 是一个包含Google Test框架1.5.0版本的压缩包文件。Google Test,通常简称为gtest,是Google开发的一个开源C++测试框架,用于编写C++代码的单元测试。它提供了一种结构化的、易于使用的接口,帮助...

    gtest1.4.0源代码

    在gtest中,通过定义名为`TEST_F`的宏来创建测试用例,其中第一个参数是测试套件的类名,第二个参数是测试用例的名称。 5. **断言(Assertions)**:gtest提供了多种断言,如`ASSERT_TRUE/FALSE`,`EXPECT_EQ/NE`,...

    gtest 中文文档pdf

    2. **定义测试集**:使用 `TEST_F` 宏定义一个测试集,其中第一个参数是测试集的名字,第二个参数是测试案例的名字。 3. **编写测试逻辑**:在测试案例中编写具体的测试逻辑,使用 gtest 提供的各种断言来验证预期...

    gtest-1.7.0 最新版本

    `gtest-1.7.0` 是 Google Test 的一个特定版本,Google Test 是谷歌开发的一个开源的 C++ 测试框架,用于编写单元测试。这个框架为开发者提供了编写可复用且易于维护的测试代码的能力,有助于确保软件的质量和可靠性...

    gtest源码gtest源码

    一个`gtest`测试程序由一个或多个测试用例(TestCase)组成,每个测试用例包含一个或多个测试点(Test)。测试点通过定义`TEST_F`宏来创建,它需要两个参数:测试用例类名和测试点名称。例如: ```cpp class ...

    最新版GTest 1.7.0

    GTest是Google开发的一个开源测试框架,主要用于C++程序的单元测试。它的最新版本是1.7.0,这个版本提供了许多改进和增强,使得测试更加便捷和高效。本文将详细解析GTest 1.7.0的重要特性、安装与使用方法、以及如何...

Global site tag (gtag.js) - Google Analytics