怎么对ChannelHandler做测试?
把书读薄(Netty In Action第九章)
怎么对ChannelHandler做测试?
使用EmbeddedChannel。它的数据流程如下所示:
- writeOutbound:将出站消息写到EmbeddedChannel中,如果能通过readOutbound从EmbeddedChannel中读到数据,返回true
- readOutbound:从EmbeddedChannel中读取一个出站消息,它所返回的所有东西都会穿过整个的ChannelPipeline。如果没有读取的,就返回null
- writeInbound:将入站消息写到EmbeddedChannel中,如果能通过readInbound从EmbeddedChannel中读取数据,返回true
- readInbound:从EmbeddedChannel中读取一个入站消息,任何返回都会经过ChannelPipeline。如果没有读取,返回null
测试案例
ByteBuf buf=Upooled.buffer();
for(int i=1;i<10;i++){buf.writeInt(i*-1);
}
//MyAbsChannelHandler 负责将每个负数转为正数,并一个一个的输出
EmbeddedChannel channel=new EmbeddedChannel(new MyAbsChannelHandler());
assertTrue(channel.writeOutbound(buf));
//finish 表示将 EmbeddedChannel 标记为完成,如果有可读的入站数据或出站数据,返回true
assertTrue(channel.finish());for(int i=1;i<10;i++){assertEquals(i,channel.readOutbound());
}
assertNull(channel.readOutbound())
怎么对ChannelHandler做测试?相关推荐
- 如何使用Leangoo敏捷工具做测试管理。
"软件测试是指在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程." 在敏捷需求开发中,测试伙伴无法通过看板将测试用例和Sprint ...
- 想做测试经理的看过来
当你来到公司的第一天,他就是你今天要找的人.刚挂掉找寻的电话,略微寒暄,就开始帮你安排座位,安排带教人,带你熟悉工作环境--一切都那么井井有条.这,大约就是对测试经理这个职位的第一印象了.工作后慢慢发 ...
- 读Google是如何做测试的
网上有<What Test Engineers do at Google>的原文翻译,以及相关中文书籍<google软件测试之道>.今天不会在这里搬内容,写一些读书笔记和感悟. ...
- CentOS下为Web网站性能做测试
CentOS下为Web网站性能做测试 时间:2014-12-08 01:33来源:loosky.net 作者:自由的风 举报 点击:429次 Webbench是知名的网站压力方面的测试工具,它是 ...
- 飞鸽传书整个逻辑盲写,不做测试
飞鸽传书这是一个项目中的一个案例,在提测的过程中竟然发现主功能有严重的bug.这样的bug被测试发现确实非常惭愧,我把自己骂了好几遍.可能每个人都会为自己辩解,谁写代码没有问题.但是我在这里说一下我自 ...
- 想做测试工程师,这7件事你必须先知道
摘要:写代码归开发攻城狮,测试归测试攻城狮,大部分情况下双方处于"红蓝对峙"状态. 一."开发者测试" 就是"开发者来测试" 开发者测试是现 ...
- 去百度/阿里/腾讯…做测试的,都是什么样的人?
测试这条路上其实有不少一路"躺赢"的同学,拿着offer功成身退.但是! 也有很多测试小伙伴频频反映:找工作很难,特别是进大一点的厂!他们特别挑!!! 而去百度.阿里.腾讯--等顶 ...
- 你知道这5年我怎么过的吗!谈谈我做测试开发的这些年……【总结】
软件测试这个行业总是会被很多人误解,不懂行的人总会这样吐槽:"测试员就是吃青春饭的","30岁还没做公司中层领导说明快被企业淘汰了","过了30岁年薪 ...
- python做测试需要哪些技能_测试人员需要具备哪些基本技能
测试人员需要具备哪些基本技能或者素质.这个问题在几年前常见于软件测试工程师笔试题上.对这个问题,我觉得应该有新的解读.现在我们日常工作中需要应对的是,测试和开发的交叉领域,测试和运维的交叉领域.而不再 ...
- 年薪16薪,工作福利靠砸钱 ?在京东做测试员原来这么爽
前段时间,京东和阿里相继发布了2021第三季度的财报,虽两者业绩均受承压,可京东在市场上却更受到认可些. 京东财报显示,京东三季度的"平台及服务收入"达168亿元,同比增长35%, ...
最新文章
- Java泛型中的PECS原则
- DBA基础系列SQL Server 2014:2. SQL Server用户数据库初始化配置
- MapReduce简述
- 水题(water)(非详细解答)
- 【自适应(盲)均衡5】分数间隔均衡器基本原理及应用(更正数字通信翻译版中公式错误)
- 让程序结果在屏幕上暂停一段时间
- MySQL的主从复制云栖社区_MySQL-主从复制
- powerbi内部部署安装指导
- 被苹果“先捧后杀”的操作系统
- java 输出一个爱心_java基础 之 几个常用的类
- Go基础:产生随机数
- Excel 4.0宏躲避杀软检测(转)
- RequestResponse
- win Server 2012 R2 密钥
- 微信开发者工具登录时tunneling socket could not be established
- javascript实现数字补全不足补零
- 小米8对一加6打开软件速度测试,同为骁龙845,小米8、一加6吃鸡体验截然不同,问题出在哪?...
- 给女朋友做个聊天机器人,这样就能安心写代码了
- Python|求a + aa + aaa + … + aa…a的值
- 完成迭代效劳器端和客户端
热门文章
- Atitit 计算机网络体系结构原理与实践attilax总结 目录 1. 计算机网络体系结构	1 1.1. Wmi	1 1.2. IPMI与BMC	1 1.3. Tcp/udp	2 1.4. 代理
- Atitit 软件程序的定义 软件广义定义 程序代码,文档 ,数据 方法,规则, 狭义定义 软件=程序+数据+文档 软件(英文:Software)是一系列按照特定顺序组织的计算机数据和指
- Atitit.导出excel功能的设计 与解决方案
- PAIP.img ROM文件提取APK
- Palantir:野心贼大,想做世界的创新引擎(附纪要)| 国君计算机李沐华
- 基金公司十大非货规模逆袭(2010-2020)
- 农业银行王敬东——金融科技时代商业银行战略模式选择初探
- 支付那些事儿III---一个BD汪眼中的产品I
- 华尔街(Wall Street)与先锋集团(Vanguard )之间的战争
- 到上海,与陈绪零距离