博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
boost test学习(二)
阅读量:7119 次
发布时间:2019-06-28

本文共 1162 字,大约阅读时间需要 3 分钟。

上章提到的测试方法不能进行测试安装和测试清除。测试夹具可完成这样的功能。

定义全局测试夹具:

BOOST_GLOBAL_FIXTURE(classGlobal)

定义套件测试夹具:

BOOST_FIXTURE_TEST_SUITE(suitName, classSuit)

用法相对比较简单,直接上代码:

// test_boost_suit2.cpp : 定义控制台应用程序的入口点。
 
#define BOOST_TEST_INCLUDE
 
#include 
#include 
using namespace std;
 
#define BOOST_TEST_MODULE maintest
 
#include 
#include 
using namespace boost;
 
//全局的测试夹具类
struct global_fixture
{
global_fixture(){cout<<"global setup"<
~global_fixture(){cout<<"global teardown"<
};
 
//定义全局夹具
BOOST_GLOBAL_FIXTURE(global_fixture);
 
//测试套件夹具类
struct assign_fixture
{
assign_fixture()
{
cout<<"suit setup"<
}
~assign_fixture()
{
cout<<"suit tear down"<
}
vector
v;
};
 
//测试定义套件级别的夹具
BOOST_FIXTURE_TEST_SUITE(s_assign, assign_fixture)
 
BOOST_AUTO_TEST_CASE(t_assign1)
{
using namespace boost::assign;
 
v += 1, 2, 3, 4;
BOOST_CHECK_EQUAL(v.size(), 4);
BOOST_CHECK_EQUAL(v[2], 3);
BOOST_CHECK_EQUAL(v[2], 4);
}
 
BOOST_AUTO_TEST_CASE(t_assign2)
{
using namespace boost::assign;
 
push_back(v) (10) (20) (30);
 
BOOST_CHECK_EQUAL(v.empty(), false);
BOOST_CHECK_LT(v[0], v[1]);
BOOST_CHECK_GT(v[0], v[1]);
}
 
BOOST_AUTO_TEST_SUITE_END()

转载地址:http://doiel.baihongyu.com/

你可能感兴趣的文章
解决“重新安装vmware-tools”灰色而无法安装的问题
查看>>
ASP.NET Core管道深度剖析
查看>>
Mock方法介绍
查看>>
HighCharts/Highstock使用小结,使用汉化及中文帮助文档
查看>>
OpenLayers学习笔记2——坐标转换问题
查看>>
计算机网络面试题
查看>>
bootstrap中让图片自适应不同的分辨率的方法
查看>>
jQuery的鼠标事件总结
查看>>
产品经理经常使用工具
查看>>
批量删除数据库表
查看>>
38..Node.js工具模块---底层的网络通信--Net模块
查看>>
机器学习笔记(6):多类逻辑回归-使用gluon
查看>>
【CLR】解析AppDomain
查看>>
[React Native] Prevent the On-screen Keyboard from Covering up Text Inputs
查看>>
hashMap 根据已有知识知道的
查看>>
使用脚本关闭订单头
查看>>
FusionChart 保存图片
查看>>
基于mini2440的两种触屏中断程序(T35)
查看>>
C++ Profiler工具之初体验
查看>>
SQLSERVER是怎麽通过索引和统计信息来找到目标数据的(第二篇)
查看>>