打开资源管理器: nautilus .

gtest 获取

从:https://www.bogotobogo.com/cplusplus/google_unit_test_gtest.php

获取gtest-1.7.0-rc1.zip,下载链接,下载打包的源码

或在git仓库下载: git clone https://github.com/google/googletest.git

gtest安装

下载gtest源码包:gtest-1.7.0.zip

解压后进入gtest-1.7.0目录

cmake CMakeLists.txt

make 后生成两个静态库:libgtest.a libgtest_main.a

sudo cp libgtest*.a /usr/lib

sudo cp –a include/gtest /usr/include

测试gtest

下面是进入到sample目录下编译官方提供的用例

cd sample

编译用例1

g++ sample1.cc sample1_unittest.cc -lgtest -lgtest_main -lpthread -o test1

编译用例2

g++ sample2.cc sample2_unittest.cc -lgtest -lgtest_main -lpthread -o test2

由于sample1.cc和sample1_unittest.cc文件中没有编写main函数,这里需要链接libgtest_main.a库,作为程序入口

测试自己的用例

三个源文件

第一个测试函数源文件:SimpleMath.h

// SimpleMath.h

#include <cmath>
double cubic(double d)
{
return pow(d,3);
}

第二个测试用例:TestCase.cpp

#include <gtest/gtest.h>
#include "SimpleMath.h"
TEST(FooTest, RightCase)
{
EXPECT_EQ(8, cubic(2));
}
TEST(FooTest, ErrCase)
{
EXPECT_EQ(27, cubic(3));
}

第三个入口:TestMain.cpp

#include <gtest/gtest.h>
int main(int argc, char* argv[])
{
testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}

编译用的makefile

cc = g++ -std=c++11
prom = test
deps = SimpleMath.h
obj = TestCase.o TestMain.o
LIBS = -lgtest -lpthread $(prom): $(obj)
$(cc) -o $(prom) $(obj) $(LIBS) %.o: %.c $(deps)
$(cc) -c $< -o $@

入门教程

http://www.cnblogs.com/coderzh/archive/2009/03/31/1426758.html

gtest 安装与使用的更多相关文章

  1. gtest 安装

    1.下载,https://code.google.com/p/googletest/.解压,进入该目录,按REAME说明 安装:1.5之前 make install可以安装,1.6之后不可以...安装 ...

  2. linux 下gtest 安装

    cd gtest_dir //解压后的目录 mkdir mybuild # Create a directory to hold the build output. cd mybuild cmake ...

  3. 简单易懂的单元测试框架-gtest(一)

    简介     gtest是google开源的一个单元测试框架,以其简单易学的特点被广泛使用.该框架以第三方库的方式插入被测代码中.同其他单元测试框架相似,gtest也通过制作测试样例来进行代码测试.同 ...

  4. snappy 安装

    1 下载snappywget https://kojipkgs.fedoraproject.org//vol/fedora_koji_archive00/packages/snappy/1.1.0/1 ...

  5. 如何在项目中使用gtest1.6

    问题 gtest1.6版本的README里说该版本不支持make install,其意思就是说你没法通过make命令把gtest安装到/usr/local/lib之类的目录,所以你也没办法通过下面的命 ...

  6. caffe 学习(1) —— Classification: Instant Recognition with Caffe

    学习地址http://nbviewer.jupyter.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb 1.安装m ...

  7. gtest的安装和测试[good]

    一.前言 本篇将介绍一些gtest的基本使用,包括下载,安装,编译,建立我们第一个测试Demo工程,以及编写一个最简单的测试案例. 二.下载 如果不记得网址, 直接在google里搜gtest,第一个 ...

  8. ubuntu 安装 google Gtest [转]有效性待验证

    最近在做一些东西,用过gtest,废话少说,现讲其再ubuntu上安装的 方法贴出来,以供朋友们参考: 安装gtest分三步: 1.安装源代码 在ubuntu的桌面上,右键选择打开终端,在终端中输入如 ...

  9. gtest环境安装

    gtest全称Google Test,是Google的C++测试框架,有很多优秀的软件都会依赖这个环境编译或者在开发中也会用到,gtest的编译非常简单,下面简单说明一下安装过程. gtest git ...

随机推荐

  1. CSS 水平居中与垂直居中

    前言 在CSS布局中,水平居中与垂直居中一直是用到比较多的,在本篇中将介绍水平居中.垂直居中的几种方式. 示例 HTML: <div class="parent"> & ...

  2. python的类和对象(类的静态字段)

    转自:http://www.cnblogs.com/Eva-J/p/5044411.html 什么是静态字段 在开始之前,先上图,解释一下什么是类的静态字段(我有的时候会叫它类的静态变量,总之说的都是 ...

  3. Canvas入门到高级详解(中)

    三. canvas 进阶 3.1 Canvas 颜色样式和阴影 3.1.1 设置填充和描边的颜色(掌握) fillStyle : 设置或返回用于填充绘画的颜色 strokeStyle: 设置或返回用于 ...

  4. linux php --ini

    $ php --ini

  5. hdoj:2055

    #include <iostream> #include <string> using namespace std; bool islower(char ch) { if (c ...

  6. sprintf的Bug

    ]; sprintf(buffer,,,); 这样一般不崩溃,但是10次,有那么一次会崩溃 我只能说后面改成 0.0就可以了...

  7. 又一次认识java(七) ---- final keyword

    你总以为你会了,事实上你仅仅是一知半解. final 关键字概览 final关键字可用于声明属性.方法.參数和类,分别表示属性不可变.方法不可覆盖.參数不可变和类不能够继承. 我们来分别看看它的使用方 ...

  8. 【多媒体封装格式详解】--- AAC ADTS格式分析

    ADTS全称是(Audio Data Transport Stream),是AAC的一种十分常见的传输格式. 记得第一次做demux的时候,把AAC音频的ES流从FLV封装格式中抽出来送给硬件解码器时 ...

  9. Qt编写自定义控件11-设备防区按钮控件

    前言 在很多项目应用中,需要根据数据动态生成对象显示在地图上,比如地图标注,同时还需要可拖动对象到指定位置显示,能有多种状态指示,安防领域一般用来表示防区或者设备,可以直接显示防区号,有多种状态颜色指 ...

  10. iOS - 集成高德SDK解决Marker点重复点击无效问题

    场景: 在处理Marker点击事件时,此时地图上有Marker点A及Marker点B,当选中Marker点A后,SDK方法 "didSelectAnnotationView"响应了 ...