gtest在linux下编译测试用例
来源:互联网 发布:ti84模拟器 mac 编辑:程序博客网 时间:2024/06/06 01:44
研究gtest有一段时间了 主要是参照coderZH的《玩转Google开源C++单元测试框架Google Test系列》 来进行学习,但他的编译环境是基于windows的,所以有些地方还是很不一样。因此特意将自己的编译过程记录一下.
首先,将如下代码写入到命名为Footest.cc的文件中:
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);}
这里所定义的是被测函数Foo
下面是被命名为Footest_unittest.cc的测试案例:
#include <gtest/gtest.h>#include "Footest.cc"TEST(FooTest, HandleNoneZeroInput){ EXPECT_EQ(2, Foo(4, 10)); EXPECT_EQ(6, Foo(30, 18));}
接下来就是与coderZH不同的地方了,linux下gtest用例的编译:
第一步:
libtool --mode=compile gcc -g -O -c Footest.cc
第二步:
libtool --mode=compile gcc -I ../include/ -g -O -c Footest_unittest.cc
第三步:
libtool --mode=link gcc -g -O -o Footest Footest_unittest.o ../lib/libgtest_main.la -lm
这里所有的步骤都是在gtest-1.6.0/samples目录下执行的。
编译成功生成Footest程序,执行结果如下:
rony-nb@rony-nb:~/codes/gtest-1.6.0/samples$ ./Footest
Running main() from gtest_main.cc
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from FooTest
[ RUN ] FooTest.HandleNoneZeroInput
[ OK ] FooTest.HandleNoneZeroInput (0 ms)
[----------] 1 test from FooTest (0 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (0 ms total)
[ PASSED ] 1 test.
- gtest在linux下编译测试用例
- gtest-1.60.zip在linux下的编译与简单测试
- Linux下Gtest测试框架应用实例
- Linux下Gtest测试框架应用实例
- Linux下Gtest测试环境搭建步骤
- Linux下Google Test (GTest)测试环境搭建步骤
- Linux下Google Test(GTest)测试环境搭建步骤
- linux下gtest
- linux 下gtest 安装
- linux下gTest笔记
- gtest如何执行部分测试用例
- gtest学习(一)在linux下的安装
- Linux下安装gtest/gmock
- Linux下安装gtest/gmock
- linux 下 gtest 的安装
- linux下gtest&gmock下载
- 在linux上搭建gtest
- 在linux上搭建gtest
- 灰色预测GM(1,1)模型实现IML & R
- 二路归并排序_2011_10_11
- AJAX与ASP.NET结合仿GridView增删改查功能
- FCKeditor 2.1.1 添加自定义按钮
- Web Service之Hessian详解
- gtest在linux下编译测试用例
- 自定义 UIAlertVIew 背景
- 通过pound+stunnel查看HTTPS内容
- workthread模式
- JavaScript的<script> 标签
- gif 动画
- com(持续更新)
- 日本語の習う②課
- 论C++构造函数中的不合理设计