《Storm实时数据处理》一2.7 为日志流集群创建集成测试
本节书摘来华章计算机《Storm实时数据处理》一书中的第2章 ,第2.7节,(澳)Quinton Anderson 著 卢誉声 译更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.7 为日志流集群创建集成测试
在交付过程中,集成测试扮演着非常重要的角色。集成测试的类型有很多。通常来说,单元集成测试和Topology集成测试不仅是持续集成构建周期的组成部分,还是对部署集群集成测试的必要功能性风格的补充。我们在这里展示的集成测试方法本质上和第1章中的集成测试方法没什么区别,但这里却复杂很多,所以有必要多作些解释。
2.7.1 实战
我们先来创建单元测试。
Step01 使用Eclipse,在项目的单元测试源代码目录中的storm.cookbook.log包里创建一个名为IntegrationTestTopology的JUnit 4单元测试用例。添加一个setup方法,该方法会在初始化类之前被调用:
Step02 接下来创建setup方法中所有被调用的初始化方法,我们先来初始化嵌入式版本的Cassandra:
Step03 然后初始化本地嵌入式Elastic Search实例:
Step04 最后,初始化需要测试的Topology:
Step05 这样我们就准备好了所有测试Topology所需的工具。另外,我们还需要在测试结束时销毁这些对象和结构体,在测试套件中增加一个AfterClass方法:
Step06 然后实现好测试用例就可以大功告成了:
2.7.2 解析
该测试用例通过创建嵌入式Topology集群实例来实现集成测试功能,其中两个实例分别叫做Cassandra和Elastic Search。然后我们所做的工作就与之前的集成测试一样,将测试数据添加到输入通道,通过Topology来处理这些日志记录,并验证搜索引擎中的记录,以及计数器自增状态正确与否。
该测试相比普通的单元测来说需要花费更多时间,因此不应该将它们包含到你的标准Maven构建当中。但这个测试有必要作为你在本地开发工作过程当中的重要一环,并在持续集成服务器上进一步进行验证。
《Storm实时数据处理》一2.7 为日志流集群创建集成测试相关推荐
- 《Storm实时数据处理》一2.6 统计与持久化日志统计信息
本节书摘来华章计算机<Storm实时数据处理>一书中的第2章 ,第2.6节,(澳)Quinton Anderson 著 卢誉声 译更多章节内容可以访问云栖社区"华章计算机&quo ...
- ELK日志中心集群,看完工资+1k
目录 一.ELK日志分析集群 1.组件介绍 (1)Elasticsearch: (2)Logstash: (3)kibana : (4)kafka:(kafka集群+elk) (5)Filebeat: ...
- 一步一步搭建ELK日志处理集群(自己做过测试)
下面的linux版本用的是centos 7的,用centos 6.5有可能出现问题. ELK集群搭建手册 一. 环境准备: 三台Linux服务器,ip地址分别为: 192.168.25.30 19 ...
- Storm 04_Storm单机模式搭建完全分布式安装部署集群drpc
一.环境要求 JDK 1.6+ java -version Python 2.6.6+ python -V ZooKeeper3.4.5+ storm 0.9.4+ ----------------- ...
- oracle数据库集群日志,Oracle集群数据库中恢复归档日志
恢复归档日志:select * from v$log_history t where t.THREAD#= 恢复归档日志:select * from v$log_history t where t.T ...
- Storm集群使用DRPC功能Version1.0.1
在Storm集群上开启DRPC功能, 基于Storm的1.0.1版本, 并且执行简单的例子测试. 1.DRPC概念 DRPC就是分布式远程过程调用. Storm里面引入DRPC主要是利用storm的实 ...
- storm笔记:storm集群
storm笔记:storm集群 Strom集群结构是有一个主节点(nimbus)和多个工作节点(supervisor)组成的主从结构,主节点通过配置静态指定(还有一种主从结构是在运行时动态选举,比如z ...
- Storm集群安装及wordcount案例
Storm集群部署 1.下载安装包 2.解压安装包 #解压到平台 tar -zxvf apache-storm-0.9.5.tar.gz -C /usr/local/apps/platform/ #创 ...
- 12c集群日志位置_Oracle 19C RAC 集群日志位置变化
作者 | JiekeXu 来源 | JiekeXu之路(ID: JiekeXu_IT) 转载请联系授权 | (微信ID:xxq1426321293) 大家好,我是 JiekeXu,很高兴又和大家见面了 ...
最新文章
- 用CocoaPods做iOS程序的依赖管理
- SAP MM 存储条件 - Room Temperature Vs Ambient
- 交换机4种网络结构:级联、端口聚合、堆叠、分层—Vecloud微云
- autowired_@Autowired所有的东西!
- android c博客园,android上进行c/C 开发测试(转) - 奋进 - 博客园
- Oralce SQLPlus 以及shell脚本中spool输出到文件时的格式化输出
- VB2010(1)_Hello User
- android 后台运行管理,Android 后台运行白名单,优雅实现保活
- 20130408-[转]贴片钽电容的封装、尺寸和标识
- html渐变生成,css gradient 在线渐变生成工具
- NetApp 数据存储解决方案:广泛的全闪存、混合闪存和对象存储系统产品组合
- Using the Hardware Scaler for Performance and Efficiency
- 关闭惠普计算机通电启动注册表,惠普电脑总是自动重启如何解决
- wordpress 瀑布流ajax,WordPress瀑布流主题:蛋花儿Free版
- python字典的删除(简介明了)
- 写好一份数据分析报告需要注意的13个要点
- Second season seventh episode,Ross finds out Rachel like him,what will he do???
- 程序员是什么又代表这多少角色?你想过吗?
- DQN(Deep Q Network)及其代码实现
- 浪潮8465m4安装linux,NF8465M4 – 常见问题
热门文章
- c语言任意位数逆序数,C语言求助!一个三位数的逆序数,总是编不对
- 当稳定币遇上BCH,将会擦出什么样的火花?
- C++雾中风景12:聊聊C++中的Mutex,以及拯救生产力的Boost
- 二、Swift网络请求回来的数据我这样取
- bzoj2039[2009国家集训队]employ人员雇佣
- sharepoint2013的审核日志的时间区域设置
- 【转】iphone开发中NSMutableAttributedString/NSAttributedString 富文本设置
- CStatic控件的基本使用
- 计算机网络机械特性是指,《计算机网络与通信》第1——3章 习题及思考题
- ssm校园帮代服务系统的设计与实现答辩PPT模板