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

聊城网站建设工作室网上挣钱正规渠道

聊城网站建设工作室,网上挣钱正规渠道,网站获取qq号码 代码,服装生产erp管理软件最近#xff0c;我参与了一个关于twitter和google 的简短在线讨论#xff0c;其中涉及一个问题#xff0c;即Java 8 Lambda表达式的到来为什么使catch-exception库 1过时了。 这是由简短的声明触发的#xff0c;该声明将不再维护该库#xff0c;因为lambda将使其变得多余。… 最近我参与了一个关于twitter和google 的简短在线讨论其中涉及一个问题即Java 8 Lambda表达式的到来为什么使catch-exception库 1过时了。 这是由简短的声明触发的该声明将不再维护该库因为lambda将使其变得多余。 我当时想出的答案与 RafałBorowiec在他写得很好的文章《 JUNIT使用JAVA 8和LAMBDA表达式测试例外》中提出的答案有很多共同点。 但是让这两种方法都重新考虑一下我相信就干净代码而言甚至可以做得更好。 因此这篇文章是对该主题的引用它分享了我的最新考虑并简要地解释了一个稍微完善的解决方案。 这样我希望很快就能发现薄弱环节…… 动机 在编写测试时我总是尽力在测试方法中以清晰可见的方式将布置/动作/声明 2个阶段分离开来我的印象是越来越多的人通过使用空白来视觉强调这些阶段行作为分隔符。 现在在我看来上面提到的catch-exception解决方案或多或少地将行为和断言阶段混合在一起。 这是因为两个都声称Throwable在仍处于动作阶段时已被抛出。 但是断言显然属于断言阶段。 幸运的是这个问题很容易解决。 细化 让我们看一个简单的示例以解释改进的方法的外观。 我从一个类开始该类提供了一个IllegalStateException的方法以进行演示 public class Foo {static final String ERR_MESSAGE bad;public void doIt() throws IllegalStateException {throw new IllegalStateException(ERR_MESSAGE);} } 下一个代码片段引入了一个小助手该助手负责捕获在JUnit测试的操作阶段抛出的Throwable 。 请注意它本身不会声明任何内容。 它仅返回捕获的Throwable如果有否则返回null 。 public class ThrowableCaptor {public interface Actor {void act() throws Throwable;}public static Throwable captureThrowable( Actor actor ) {Throwable result null;try {actor.act();} catch( Throwable throwable ) {result throwable;}return result;} } 为了强调ThrowableCaptor用于处理JUnit Test的动作阶段 captorThrowable方法采用了Actor类型的参数–诚然它可能会比喻过期一些…… 无论如何有了该实用程序 AssertJ用于干净的匹配器表达式静态导入和手头的Java 8 lambda异常测试可能看起来像这样 public class FooTest {Testpublic void testException() {// arrangeFoo foo new Foo();// actThrowable actual captureThrowable( foo::doIt );// assertassertThat( actual ).isInstanceOf( IllegalStateException.class ).hasMessage( Foo.ERR_MESSAGE );} } 为了澄清起见我添加了一些注释以描述测试方法中三个阶段的明确分离。 如果没有抛出异常则assert块将以断言错误来退出此过程并指出“期望实际值不为null” 3 。 结论 通过将Throwable存在检查从行为转移到断言阶段基于Java8 lambda表达式的catch-exception方法允许以一种非常简洁的方式编写此类测试-至少从我当前的角度来看。 所以你怎么看 我想念什么吗 为了使异常测试更简洁catch-exception库在一行代码中捕获异常并使它们可用于进一步分析 请参阅实用单元测试第3.9章。 单元测试的阶段Tomek Kaczanowski 2013通常也表示为构建-操作-检查模式清洁代码第9章。单元测试Robert C. Martin2009年 Assertion#isNotNull检查由Assertion#isInstanceOf隐式调用但当然也可以显式调用 翻译自: https://www.javacodegeeks.com/2014/07/clean-junit-throwable-tests-with-java-8-lambdas.html
http://www.yutouwan.com/news/474694/

相关文章:

  • 搭建一个影视网站青岛的网站建设
  • 连锁加盟网站制作阿里云服务器做盗版视频网站
  • 织梦网站更改网站的导航青岛网站关键词
  • 计算机应用技术毕业设计seo优化网站
  • 自己的网站怎么做关键词优化镇江网友之家百姓话题
  • 企业信息网页模板淄博优化网站
  • 网站免费做招生宣传网站,商城,app+建设
  • 做旅游网站的目的网站设计原型图怎么做
  • 私人定制平台网站微信电商
  • 高校门户网站开发如何将网站提交到搜索引擎
  • 建设工程网站即墨城乡建设局网站
  • 做老师一些好的网站搜索引擎网站推广法 怎么做
  • asp.net网站转phpid转换为wordpress
  • zencart网站备份莱芜在线话题凤城高中
  • 赣州建网站网站备案之后
  • 天堂网长尾关键词挖掘网站外包公司值得去吗
  • 网站开发行业资讯音乐网站开发可行性分析
  • 广西钦州有做网站的公司吗重庆建筑施工信息网
  • 企业网站建设可行性分析任务网站开发 开源
  • html网站开发需要什么软件网站开发在线学习
  • 广州微网站建设比分网站建设
  • 中国建设银行信用卡黑名单网站网站建设 算什么
  • 惠州网站建设外包网站静态和动态区别是什么
  • 直接找高校研究生做网站行吗html改造wordpress
  • wordpress 安卓seo的收费标准
  • 连连电商网站开发公司个人营业执照网上注销流程
  • 公司网站建设价格贵吗教务管理网站开发
  • 可以免费做网站推广的平台注册公司条件和要求
  • 福州正规网站建设公司推荐浙江建设厅网站怎么进不去
  • 东莞微网站建设公司网架加工费多少钱一吨