测试辅助工具 hamcrest

码农软件 · 软件分类 · 测试工具 · 2019-11-26 06:28:22

软件介绍

Hamcrest是一个书写匹配器对象时允许直接定义匹配规则的框架.有大量的匹配器是侵入式的,例如UI验证或者数据过滤,但是匹配对象在书写灵活的测试是最常用.本教程将告诉你如何使用Hamcrest进行单元测试.

Hamcrest从一开始就设计结合不同的单元测试框架.例如,Hamcrest可以使用JUnit3和4TestNG.(详细查看完整Hamcrest发布中的例子).在一个现有的测试套件中迁移到使用Hamcrest风格的断言是很容易的,因为其他断言风格可以和Hamcrest的共存.

通过使用从mock Objects框架概念匹配器到Hamcrest匹配器桥接适配器Hamcrest也可以在mock objects框架中.例如,JMock 1系统规定是Hamcrest风格.Hamcrest提供了一个JMock 1适配器来允许你在JMock 1测试中使用Hamcrest匹配器.JMock 2不需要这样一个适配器层,因为它被设计使用Hamcrest作为一个匹配库.Hamcrest还提供了EasyMock 2适配器.同样,详细查看Hamcrest例子.

Hamcrest带有一个有用的匹配器库.以下是一些最重要的.

  • 核心

    • anything - 总是匹配,如果你不关心测试下的对象是什么是有用的

    • describedAs - 添加一个定制的失败表述装饰器

    • is - 改进可读性装饰器 - 见下 “Sugar”

  • 逻辑

    • allOf - 如果所有匹配器都匹配才匹配, short circuits (很难懂的一个词,意译是短路,感觉不对,就没有翻译)(像 Java &&)

    • anyOf - 如果任何匹配器匹配就匹配, short circuits (像 Java ||)

    • not - 如果包装的匹配器不匹配器时匹配,反之亦然

  • 对象

    • equalTo - 测试对象相等使用Object.equals方法

    • hasToString - 测试Object.toString方法

    • instanceOf, isCompatibleType - 测试类型

    • notNullValue, nullValue - 测试null

    • sameInstance - 测试对象实例

  • Beans

    • hasProperty - 测试JavaBeans属性

  • 集合

    • array - 测试一个数组元素test an array’s elements against an array of matchers

    • hasEntry, hasKey, hasValue - 测试一个Map包含一个实体,键或者值

    • hasItem, hasItems - 测试一个集合包含一个元素

    • hasItemInArray - 测试一个数组包含一个元素

  • 数字

    • closeTo - 测试浮点值接近给定的值

    • greaterThan, greaterThanOrEqualTo, lessThan, lessThanOrEqualTo - 测试次序

  • 文本

    • equalToIgnoringCase - 测试字符串相等忽略大小写

    • equalToIgnoringWhiteSpace - 测试字符串忽略空白

    • containsString, endsWith, startsWith - 测试字符串匹配

本文地址:https://codercto.com/soft/d/19806.html

Web性能优化

Web性能优化

Patrick Killelea 谢 / 谢文亮 / 清华大学出版社 / 2003-11-01 / 49.00元

本书讲述如何将Web性能调至最佳状态。书中不仅谈到了Web服务器软件的优化,而且还涉及到如何流水化处理Web内容,如何从浏览器端着手优化性能,如何调校客户端和服务器的硬件,以及如何最大限度地使用网络本身的特性。 书中的内容涉及到影响性能好坏的本质,并为得到立竿见影的效果提供了具体建议。本书向您娓娓道出评价计算性能高低的准则,并在后半部分讲述从客户端、网络直到服务器这一链条中每个环节的薄弱之一起来看看 《Web性能优化》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具