当前位置: 首页 > news >正文

制作很好的网站邢台网警

制作很好的网站,邢台网警,wordpress 附件外置,网站seo具体怎么做AssertJ和Awaitility是在自动代码测试中使用的两个我最喜欢的工具。 不幸的是直到最近#xff0c;还不能一起使用它。 但是随后Java 8进入了游戏#xff0c;几十行代码足以使其在Awaility 1.6.0中实现。 AssertJ提供了一组丰富的断言#xff0c;其中包含非常有用的错误消息… AssertJ和Awaitility是在自动代码测试中使用的两个我最喜欢的工具。 不幸的是直到最近还不能一起使用它。 但是随后Java 8进入了游戏几十行代码足以使其在Awaility 1.6.0中实现。 AssertJ提供了一组丰富的断言其中包含非常有用的错误消息所有这些消息都可以通过流畅的类型识别 API获得。 Awaitility允许表达简明异步调用的期望和易于阅读的方式利用其缩短测试时间的积极等待模式没有更多的睡眠5000。 一年前当我正在使用复杂事件处理 CEP进行算法交易项目时就想到了将其一起使用的想法而且我不喜欢仅针对具有Awaitility的异步测试学习Hamcrest断言。 我能够进行工作的PoC 但是它需要在AssertJ然后是FEST Assert代码中进行一些重要的复制因此我搁置了这个想法。 一个月前我正在为4Developers会议准备有关异步代码测试的演示文稿并问自己一个问题Java 8如何简化Awaitility的使用 在少数示例中我将使用asynchronousMessageQueue消息队列该消息可用于发送ping请求并返回接收到的数据包的数量。 用Java 7中的Awaitility基于代理的条件除外对其进行测试的一种方法是创建一个Callable类实例 Testpublic void shouldReceivePacketAfterWhileJava7Edition() {//whenasynchronousMessageQueue.sendPing();//thenawait().until(receivedPackageCount(), equalTo(1));}private CallableInteger receivedPackageCount() {return new CallableInteger() {Overridepublic Integer call() throws Exception {return asynchronousMessageQueue.getNumberOfReceivedPackets();}};} 其中equalTo()是标准的Hamcrest匹配器。 减少冗长的第一个想法是用lambda表达式替换Callable并内联private方法 Testpublic void shouldReceivePacketAfterWhile() {//whenasynchronousMessageQueue.sendPing();//thenawait().until(() - asynchronousMessageQueue.getNumberOfReceivedPackets(), equalTo(1));} 好多了。 以后的lambda表达式可以用方法参考代替 Testpublic void shouldReceivePacketAfterWhile() {//whenasynchronousMessageQueue.sendPing();//thenawait().until(asynchronousMessageQueue::getNumberOfReceivedPackets, equalTo(1));} 有人甚至可以进一步删除Hamcrest匹配器 Testpublic void shouldReceivePacketAfterWhile() {//whenasynchronousMessageQueue.sendPing();//thenawait().until(() - asynchronousMessageQueue.getNumberOfReceivedPackets() 1); //poor error message} 但是尽管它仍然可以正常工作但错误消息的意义变得不那么重要了 ConditionTimeoutException: Condition with lambda expression in AwaitilityAsynchronousShowCaseTest was not fulfilled within 2 seconds. 而不是很清楚 ConditionTimeoutException: Lambda expression in AwaitilityAsynchronousShowCaseTest that uses AbstractMessageQueueFacade: expected 1 but was 0 within 2 seconds. 解决方案是在lambda表达式中使用AssertJ断言 Testpublic void shouldReceivePacketAfterWhileAssertJEdition() {//whenasynchronousMessageQueue.sendPing();//thenawait().until(() - assertThat(asynchronousMessageQueue.getNumberOfReceivedPackets()).isEqualTo(1));} 并且由于新的AssertionCondition最初在几分钟之内就被黑客入侵因此在Awaitility 1.6.0中成为了现实。 当然会保留AssertJ流利的API和针对不同数据类型的有意义的故障消息。 作为奖励所有引发AssertionError的断言尤其是TestNG和JUnit标准断言也可以在lambda表达式中使用但我不知道有人知道AssertJ的功能回到了“标准”断言中。 令人高兴的是 更改本身利用Runnable类来实现lambda和AssertJ支持而Awaitility 1.6.0仍与Java 5兼容。 但是出于可读性考虑仅在基于Java 8的项目中使用新结构才有意义。 顺便说一句这是我在4Developers上的演讲的“ 幻灯片 ”。 翻译自: https://www.javacodegeeks.com/2014/04/using-assertj-and-awaitility-together-thanks-to-java-8-and-lambdas.html
http://www.yutouwan.com/news/97964/

相关文章:

  • 织梦电子行业网站模板discuz 修改网站标题
  • 建网站挣钱吗建设网站赚钱的方法
  • 建设一个网站需要哪些方面的开支广告公司logo
  • 网站免费下载安装大全手机版自己做网站有哪些方法呢
  • 重庆渝云建设有限公司官方网站网页版qq音乐登录入口
  • dede网站不能访问ppt做的最好的网站有哪些
  • 邯郸做移动网站价格wordpress添加磁力下载地址
  • 网站数据库维护都是做什么幼儿网站模板
  • 网站图片什么格式建网站 xyz
  • 无锡网站seo外包怎么将网站关键词排名首页
  • 旅游网站的建设做柜子网站
  • 做网站还需要买空间吗抖音代运营合同文件
  • 公司的服务器能建设网站吗潍坊自动seo
  • 网站分享链接怎么做做警员编号网站
  • 数据库作业代做网站开发者大会
  • 微信优惠群怎么做网站软文范例100字以内
  • 做网站备案需要哪些材料洛阳网站公司
  • 永久免费建站空间怎么设计海报图片
  • 个体户做网站有用吗免费小程序制作平台
  • 购物网站开发模板上海到北京飞机要多久
  • 有没有学做衣服的网站莱芜都市网怎么样
  • 厦网站建设培训陕西宏远建设集团网站
  • 免费做那个的视频网站小程序制作需要什么技术
  • 台州微网站建设9k9k网页游戏开服表
  • 农家乐网站 建设建设网站几钱
  • 网站开发的app安卓开发课程
  • 网站建设 招标资质要求dw做的网站如何上传云服务
  • 电视剧手机网站大全站酷网app
  • 网站标签span做个英文网站多少钱
  • 建设地方美食网站的目的民企品牌建设