fest3d

我以前曾写过有关Hamcrest的博客,并优先使用其assertThat方法而不是JUnit的Assert 。

但是,我很快找到了FEST断言,并愉快地切换到它。 它提供了与Hamcrest相同的改进的测试可读性,并改善了故障消息,但具有启用IDE自动完成功能的额外好处,而不必搜索软件包和类文档以找到合适的匹配器。

不幸的是,Fest似乎不再被积极开发。 1.x分支的最后一个稳定版本1.4于2011年发布,而新的2.x分支从未使其成为稳定版本,并且自2013年6月以来就没有提交过。

输入AssertJ …

断言J

AssertJ是Fest Assert的一个分支,它似乎提供了所有好处以及一系列新功能。

馆藏

例如,它具有我最喜欢的Fest的所有精美集合:

List<String> stringList = Lists.newArrayList("A", "B", "C");assertThat(stringList).contains("A"); //trueassertThat(stringList).doesNotContain("D"); //trueassertThat(stringList).containsOnly("A"); //falseassertThat(stringList).containsExactly("A", "C", "B"); //falseassertThat(stringList).containsExactly("A", "B", "C"); //true

失败前收集所有错误

它还具有在发生故障之前捕获所有故障的能力。 例如,上述示例将作为第一个失败的假设而失败。 下面的示例使您可以查看所有失败的断言:

List<String> stringList = Lists.newArrayList("A", "B", "C");SoftAssertions softly = new SoftAssertions();softly.assertThat(stringList).contains("A"); //truesoftly.assertThat(stringList).containsOnly("A"); //falsesoftly.assertThat(stringList).containsExactly("A", "C", "B"); //falsesoftly.assertThat(stringList).containsExactly("A", "B", "C"); //true// Don't forget to call SoftAssertions global verification!softly.assertAll();

并产生如下消息:

The following 2 assertions failed:
1)
Expecting:<["A", "B", "C"]>
to contain only:<["A"]>
elements not found:<[]>
and elements not expected:<["B", "C"]>
2)
Actual and expected have the same elements but not in the same order, at index 1 actual element was:<"B">
whereas expected element was:<"C">

绝对值得一看。 AssertJ核心代码和问题跟踪器托管在github上。

翻译自: https://www.javacodegeeks.com/2014/10/assertj-fest-hamcrest.html

fest3d

fest3d_AssertJ Fest Hamcrest相关推荐

  1. fest556_AssertJ Fest Hamcrest

    fest556 我以前在博客中介绍过Hamcrest ,并优先使用其assertThat方法而不是JUnit的Assert . 但是,我很快找到了FEST断言 ,并愉快地切换到它. 它提供了与Hamc ...

  2. AssertJ Fest Hamcrest

    我以前曾在博客中介绍过Hamcrest ,并使用其assertThat方法优先于JUnit的Assert . 但是,我很快发现了FEST断言 ,并愉快地切换到它. 它提供了与Hamcrest相同的改进 ...

  3. maven mockito_如何:测试Maven项目(JUnit,Mockito,Hamcrest,AssertJ)中的依赖项

    maven mockito 对于当今的大多数Java项目而言,JUnit本身还远远不够. 您还需要一个模拟库,也许还有其他东西. 在此迷你操作指南中,我介绍了可以在新的Java项目中开始的测试依赖项. ...

  4. 如何:在Maven项目(JUnit,Mockito,Hamcrest,AssertJ)中测试依赖项

    对于当今的大多数Java项目,JUnit本身还远远不够. 您还需要一个模拟库,也许还有其他东西. 在此迷你操作指南中,我介绍了可以在新的Java项目中开始的测试依赖项. 一切都始于JUnit Mave ...

  5. junit集成Hamcrest测试集合中某个属性是否包含特定值

    junit已经集成Hamcrest但是还是需要引用hamcrest-library,不然只有基本方法,高级的没有 <dependency> <groupId>junit< ...

  6. junit、hamcrest、eclemma的安装与使用

    1.junit的安装与使用 1.1 安装步骤 1)从http://www.junit.org/ 下载junit相应的jar包: 2) 在CLASSPATH中加入JAR包所在的路径,如E:\Java\j ...

  7. 软件测试实验——安装并使用junit、hamcrest和eclemma进行简单测试

    一.安装junit.hamcrest和eclemma 首先,到junit官网下载junit和hamcrest. 新建java项目 完整代码已经上传至github:flyzero的coding路 实验内 ...

  8. 基于Python语言Hamcrest断言的使用

    我们通常熟悉的断言是assert()系列的断言,但有的时候也不能满足我们的需求,所以有了更强大的断言Hamcrest. 一.Hamcrest简介 Hamcrest源于Java,支持多种语言,是用于编写 ...

  9. JUnit注解与hamcrest

    2019独角兽企业重金招聘Python工程师标准>>> 黑盒测试: 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用.在测试中,把程序看作一个不能打开的黑盒子,在完全 ...

最新文章

  1. 单片机值得学吗?会单片机能找什么工作?
  2. 18岁智商低的表现_吃手是宝宝聪明的信号?婴儿智商高的5个讯号,吃手只是其中一个...
  3. Knockout2.x:ko.dataFor()、ko.contextFor()使用
  4. redis集合数据过期_关于redis性能问题分析和优化
  5. Maven系列二setting.xml 配置详解
  6. Linux 指令简单将***IP列入iptables 限制范围
  7. JavaScript数组内置排序函数
  8. java中hotspot_Java 8中HotSpot选项的改进文档
  9. Mysql授权用户数据库GRANT ON 数据库名.* TO 用户名@localhost identified BY ‘密码‘,报错ERROR 1064 (42000)
  10. “AI超人”李开复慢下来的投资节奏
  11. Linux学习基础一 【安装 目录 系统命令 常用vim操作】
  12. js替换字符串中的${xxx}
  13. 不用百度网盘客户端直接下载大文件
  14. Java九阳神功-内部类
  15. 使用 Gitbook 打造你的电子书
  16. UPC-5572 - Lifeguards - 动态规划
  17. Sqlite3中对于毫秒数和本地时间之间的转换以及时间相关操作
  18. 赵小楼《天道》《遥远的救世主》深度解析(5)丁元英之所以能成为丁元英的条件的可能之一(一)
  19. matlab noise level,Matlab生成白噪声
  20. ENVI_IDL:(批量处理)如何对HDF5文件进行GLT文件的创建并进行几何校正最终输出为IMG格式?

热门文章

  1. 【MacOS 配置网络访问公司内网】
  2. thinkjs + mysql 写后台接口的入坑指南
  3. CentOS7配置阿里云yum源和EPEL源
  4. 批处理 窗口最小化 java_如何让批处理程序启动的时候最小化
  5. 代付业务-受托代付、委托代付
  6. 用C语言写学生成绩管理系统
  7. 面向大规模流量活动的高可用架构实践
  8. Java中使用微信公众号的模板消息接口进行消息推送-代码篇
  9. 改进YOLOv5系列:6.修改Soft-NMS,Soft-CIoUNMS,Soft-SIoUNMS,Soft-DIoUNMS,Soft-EIoUNMS,Soft-GIoUNMS...
  10. 大赞:分区恢复工具TestDisk!!动态盘转换