测试驱动开发TDD(五)GTest in Linux

按照此文http://www.jb51.cc/article/p-koinalvu-yc.html下载源码包:gtest-1.3.0.zip,解压

进入文件夹执行:

./configure

make

make install

完毕即可正常使用:

(1)包含include目录-I/root/scp/gtest/gtest-1.3.0;

(2)包含lib中的动态链接库:-lgtest -L/root/scp/gtest/gtest-1.3.0/lib

示例代码

#include <gtest/gtest.h>

int Foo(int a,int b)
{
    if (a == 0 || b == 0)
    {
        throw "don't do that";
    }
    int c = a % b;
    if (c == 0)
        return b;
    return Foo(b,c);
}

TEST(FooTest,HandleNoneZeroInput)
{
    EXPECT_EQ(2,Foo(4,10));
    EXPECT_EQ(6,Foo(30,18));
}

int ACE_TMAIN(int argc,ACE_TCHAR* argv[])
{
    testing::InitGoogleTest(&argc,argv);
    return RUN_ALL_TESTS();

}

输出

相关文章

适配器模式将一个类的接口转换成客户期望的另一个接口,使得原本接口不兼容的类可以相互合作。
策略模式定义了一系列算法族,并封装在类中,它们之间可以互相替换,此模式让算法的变化独立于使用算法...
设计模式讲的是如何编写可扩展、可维护、可读的高质量代码,它是针对软件开发中经常遇到的一些设计问题...
模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中,使得子类可以在不改变算法结...
迭代器模式提供了一种方法,用于遍历集合对象中的元素,而又不暴露其内部的细节。
外观模式又叫门面模式,它提供了一个统一的(高层)接口,用来访问子系统中的一群接口,使得子系统更容...