gtest 安装与使用
打开资源管理器: 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 安装与使用的更多相关文章
- gtest 安装
1.下载,https://code.google.com/p/googletest/.解压,进入该目录,按REAME说明 安装:1.5之前 make install可以安装,1.6之后不可以...安装 ...
- linux 下gtest 安装
cd gtest_dir //解压后的目录 mkdir mybuild # Create a directory to hold the build output. cd mybuild cmake ...
- 简单易懂的单元测试框架-gtest(一)
简介 gtest是google开源的一个单元测试框架,以其简单易学的特点被广泛使用.该框架以第三方库的方式插入被测代码中.同其他单元测试框架相似,gtest也通过制作测试样例来进行代码测试.同 ...
- snappy 安装
1 下载snappywget https://kojipkgs.fedoraproject.org//vol/fedora_koji_archive00/packages/snappy/1.1.0/1 ...
- 如何在项目中使用gtest1.6
问题 gtest1.6版本的README里说该版本不支持make install,其意思就是说你没法通过make命令把gtest安装到/usr/local/lib之类的目录,所以你也没办法通过下面的命 ...
- caffe 学习(1) —— Classification: Instant Recognition with Caffe
学习地址http://nbviewer.jupyter.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb 1.安装m ...
- gtest的安装和测试[good]
一.前言 本篇将介绍一些gtest的基本使用,包括下载,安装,编译,建立我们第一个测试Demo工程,以及编写一个最简单的测试案例. 二.下载 如果不记得网址, 直接在google里搜gtest,第一个 ...
- ubuntu 安装 google Gtest [转]有效性待验证
最近在做一些东西,用过gtest,废话少说,现讲其再ubuntu上安装的 方法贴出来,以供朋友们参考: 安装gtest分三步: 1.安装源代码 在ubuntu的桌面上,右键选择打开终端,在终端中输入如 ...
- gtest环境安装
gtest全称Google Test,是Google的C++测试框架,有很多优秀的软件都会依赖这个环境编译或者在开发中也会用到,gtest的编译非常简单,下面简单说明一下安装过程. gtest git ...
随机推荐
- CSS 水平居中与垂直居中
前言 在CSS布局中,水平居中与垂直居中一直是用到比较多的,在本篇中将介绍水平居中.垂直居中的几种方式. 示例 HTML: <div class="parent"> & ...
- python的类和对象(类的静态字段)
转自:http://www.cnblogs.com/Eva-J/p/5044411.html 什么是静态字段 在开始之前,先上图,解释一下什么是类的静态字段(我有的时候会叫它类的静态变量,总之说的都是 ...
- Canvas入门到高级详解(中)
三. canvas 进阶 3.1 Canvas 颜色样式和阴影 3.1.1 设置填充和描边的颜色(掌握) fillStyle : 设置或返回用于填充绘画的颜色 strokeStyle: 设置或返回用于 ...
- linux php --ini
$ php --ini
- hdoj:2055
#include <iostream> #include <string> using namespace std; bool islower(char ch) { if (c ...
- sprintf的Bug
]; sprintf(buffer,,,); 这样一般不崩溃,但是10次,有那么一次会崩溃 我只能说后面改成 0.0就可以了...
- 又一次认识java(七) ---- final keyword
你总以为你会了,事实上你仅仅是一知半解. final 关键字概览 final关键字可用于声明属性.方法.參数和类,分别表示属性不可变.方法不可覆盖.參数不可变和类不能够继承. 我们来分别看看它的使用方 ...
- 【多媒体封装格式详解】--- AAC ADTS格式分析
ADTS全称是(Audio Data Transport Stream),是AAC的一种十分常见的传输格式. 记得第一次做demux的时候,把AAC音频的ES流从FLV封装格式中抽出来送给硬件解码器时 ...
- Qt编写自定义控件11-设备防区按钮控件
前言 在很多项目应用中,需要根据数据动态生成对象显示在地图上,比如地图标注,同时还需要可拖动对象到指定位置显示,能有多种状态指示,安防领域一般用来表示防区或者设备,可以直接显示防区号,有多种状态颜色指 ...
- iOS - 集成高德SDK解决Marker点重复点击无效问题
场景: 在处理Marker点击事件时,此时地图上有Marker点A及Marker点B,当选中Marker点A后,SDK方法 "didSelectAnnotationView"响应了 ...