`
esperanza
  • 浏览: 183332 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

junit4新框架hamcrest的assertThat

阅读更多

assertThat

JUnit4.4引入了Hamcrest框架,Hamcest提供了一套匹配符Matcher,这些匹配符更接近自然语言,可读性高,更加灵活

/**equalTo匹配符断言被测的testedValue等于expectedValue
* equalTo
可以断言数值之间,字符串之间和对象之间是否相等,相当于Objectequals方法
*/
assertThat(testedValue, equalTo(expectedValue));

/**equalToIgnoringCase匹配符断言被测的字符串testedString
*
在忽略大小写的情况下等于
expectedString
*/
assertThat(testedString, equalToIgnoringCase(expectedString));

/**equalToIgnoringWhiteSpace匹配符断言被测的字符串testedString
*
在忽略头尾的任意个空格的情况下等于expectedString

*
注意:字符串中的空格不能被忽略
*/
assertThat(testedString, equalToIgnoringWhiteSpace(expectedString);

/**containsString匹配符断言被测的字符串testedString包含子字符串subString**/
assertThat(testedString, containsString(subString) );

/**endsWith匹配符断言被测的字符串testedString以子字符串suffix结尾*/
assertThat(testedString, endsWith(suffix));

/**startsWith匹配符断言被测的字符串testedString以子字符串prefix开始*/
assertThat(testedString, startsWith(prefix));

 

/**nullValue()匹配符断言被测object的值为null*/
assertThat(object,nullValue());

/**notNullValue()匹配符断言被测object的值不为null*/
assertThat(object,notNullValue());

/**is匹配符断言被测的object等于后面给出匹配表达式*/
assertThat(testedString, is(equalTo(expectedValue)));

/**is匹配符简写应用之一,is(equalTo(x))的简写,断言testedValue等于expectedValue*/
assertThat(testedValue, is(expectedValue));

/**is匹配符简写应用之二,is(instanceOf(SomeClass.class))的简写,
*
断言testedObjectCheddar的实例
*/
assertThat(testedObject, is(Cheddar.class));

/**not匹配符和is匹配符正好相反,断言被测的object不等于后面给出的object*/
assertThat(testedString, not(expectedString));

/**allOf匹配符断言符合所有条件,相当于&&*/
assertThat(testedNumber, allOf( greaterThan(8), lessThan(16) ) );

/**anyOf匹配符断言符合条件之一,相当于||*/
assertThat(testedNumber, anyOf( greaterThan(16), lessThan(8) ) );

/**closeTo匹配符断言被测的浮点型数testedDouble20.0¡À0.5范围之内*/
assertThat(testedDouble, closeTo( 20.0, 0.5 ));

/**greaterThan匹配符断言被测的数值testedNumber大于16.0*/
assertThat(testedNumber, greaterThan(16.0));

/** lessThan匹配符断言被测的数值testedNumber小于16.0*/
assertThat(testedNumber, lessThan (16.0));

/** greaterThanOrEqualTo匹配符断言被测的数值testedNumber大于等于16.0*/
assertThat(testedNumber, greaterThanOrEqualTo (16.0));

/** lessThanOrEqualTo匹配符断言被测的testedNumber小于等于16.0*/
assertThat(testedNumber, lessThanOrEqualTo (16.0));

/**hasEntry匹配符断言被测的Map对象mapObject含有一个键值为"key"对应元素值为"value"Entry*/
assertThat(mapObject, hasEntry("key", "value" ) );

/**hasItem匹配符表明被测的迭代对象iterableObject含有元素element项则测试通过*/
assertThat(iterableObject, hasItem (element));

/** hasKey匹配符断言被测的Map对象mapObject含有键值“key”*/
assertThat(mapObject, hasKey ("key"));

/** hasValue匹配符断言被测的Map对象mapObject含有元素值value*/
assertThat(mapObject, hasValue(value));

分享到:
评论

相关推荐

    junit4hamcrest jar包

    总的来说,"junit4hamcrest jar包"是Java开发中进行单元测试时的重要工具,它将JUnit的测试框架和Hamcrest的匹配器完美结合,让测试代码更加优雅,提高了测试的可读性和可维护性。对于任何Java开发者来说,理解和...

    junit4.9b3+hamcrest-1.3.0RC2

    例如,assertThat()函数结合Hamcrest的匹配器,可以非常直观地表达复杂的断言,如`assertThat(result, equalTo(expected))`,这将检查result是否等于expected。 Junit4.9b3与Hamcrest的集成,使得测试更加高效。...

    junit-4.11和hamcrest-core-1.3 的jar包

    4. **与JUnit和其他测试框架兼容**:除了JUnit,Hamcrest还可以与其他Java测试框架如TestNG集成。 在实际项目中,我们通常会将这两个库结合使用。首先,使用JUnit的注解和测试结构来定义测试用例,然后利用Hamcrest...

    junit.jar + hamcrest-core.jar + hamcrest-library.jar

    Junit提供了测试框架和基础断言,而Hamcrest则增强了匹配和断言的能力,让测试更加灵活和易懂。在进行Java项目开发时,熟练掌握这两款工具的使用,不仅可以提高代码质量,还能提升团队的开发效率,减少因错误未发现...

    junit-4.12和hamcrest-core-1.3的jar包

    JUnit 4.12 和 Hamcrest Core 1.3 是两个在Java开发中广泛使用的单元测试框架的重要组件。本文将详细介绍这两个库的功能、用途以及如何在Eclipse集成开发环境中使用它们进行单元测试。 JUnit是Java编程语言的一个...

    junit-4.12.jar + hamcrest 亲测可用的

    标题中的“junit-4.12.jar + hamcrest 亲测可用的”指的是一个包含Junit 4.12版本和Hamcrest 1.3版本的测试框架组合,这个组合经过验证是能够正常工作的。在Java开发中,单元测试是确保代码质量的重要环节,而Junit...

    Junit4环境搭建和Hamcrest初步

    Junit4是JUnit框架的一个版本,它引入了注解(Annotation)来简化测试用例的编写,使得测试代码更加简洁、易读。在Java项目中,你可以通过以下步骤来搭建Junit4环境: 1. **添加依赖**:如果你使用的是Maven或...

    junit4 jar包和hamcrest-all-1.3.jar

    在Java领域,JUnit是广泛使用的单元测试框架,而Hamcrest则是一个匹配器库,为断言提供更清晰和可读性强的表达方式。本文将详细介绍JUnit4.13和Hamcrest-all-1.3这两个jar包及其源码。 JUnit4是JUnit系列的一个版本...

    Junit 4.12 及 hamcrest-core 1.3 工具包

    Junit 4.12 和 hamcrest-core 1.3 是两个重要的测试框架,它们在软件开发中扮演着至关重要的角色,特别是在Java编程环境中。本文将深入探讨这两个工具包的功能、用途以及如何在项目中使用它们。 首先,Junit 是一个...

    junit4.12+hamcrest1.3的jar包(所需全部)

    Junit4.12与Hamcrest1.3是Java编程领域中两个重要的单元测试框架,它们为开发者提供了方便、强大的测试工具。在这个压缩包中,包含了以下四个JAR文件: 1. `junit-4.12.jar`:这是JUnit 4.12的主要库文件,它提供了...

    单元测试jar(junit-4.11+hamcrest-core-1.3.rc2)

    `JUnit` 是一个广泛使用的 Java 语言的单元测试框架,而 `Hamcrest` 是一个匹配对象的库,它提供了丰富的断言方法,使得测试更加清晰和简洁。 `JUnit 4.11` 是 `JUnit` 的一个重要版本,它引入了许多增强功能和改进...

    junit-4.11与hamcrest-core-1.3.jar.zip

    Junit,作为Java编程语言中最广泛使用的单元测试框架,是开发者进行代码质量验证的得力工具。Junit 4.11和4.12版本是其历史上的重要里程碑,提供了丰富的功能和改进,使得单元测试变得更加便捷和高效。这两个版本的...

    junit-4.11.jar hamcrest-core-1.3.jar

    其中,注解(Annotation)是Junit 4的一大特色,如`@Test`用于标记测试方法,`@Before`和`@After`分别用于在每个测试之前和之后执行的设置和清理操作。此外,`@Ignore`可以忽略某个测试,而`@Expected`则可以指定...

    junit hamcrest最新

    1. JUnit框架: - **基本概念**:JUnit是一个用于自动化Java代码测试的框架,它提供了一组注解(如@Test、@Before、@After)和断言方法,帮助开发者编写简洁、可读的测试用例。 - **版本更新**:"最新"可能指的是...

    junit-4.12.jar hamcrest-library-1.3.rc2.jar hamcrest-core-1.3.rc2.jar

    `junit-4.12.jar`包含了JUnit框架的核心类库,包括测试注解(如@Test、@Before、@After、@Ignore等)、测试运行器、异常处理和结果报告等功能。通过这些功能,开发者可以快速创建测试类和测试方法,对代码进行验证。...

    java单元测试包junit4.jar和hamcrest.core.jar

    在Java中,JUnit是广泛使用的单元测试框架,而Hamcrest则是一个匹配库,提供了丰富的断言方法,使得测试表达更加清晰。下面我们将深入探讨这两个库以及如何在Java项目中使用它们。 **JUnit4.jar**: JUnit4是JUnit...

    Junit和hamcrest.zip

    JUnit是一款广泛使用的Java编程语言的单元测试框架,它允许开发者编写可执行的测试用例来验证代码功能。Hamcrest则是一个匹配器库,常用于断言,使测试表达更加清晰且强大。当我们需要生成HTML格式的测试报告时,这...

    junit4.12),hamcrest-core-1.3.jar,system-rules-1.18.0

    总之,这个压缩包包含的三个库——JUnit 4.12, Hamcrest-Core-1.3和System-Rules-1.18.0,是Java开发者进行单元测试和学习Spring框架不可或缺的工具。它们共同为编写可维护、可扩展且可靠的Java应用程序提供了坚实的...

    JavaSE测试类必备的两个jar包 ——junit-4.12.jar、hamcrest-core-1.3.jar

    JUnit是Java编程语言中最广泛使用的单元测试框架,它由Ernst Leimer和Kent Beck开发,目前版本已更新至JUnit5,但这里提到的是4.12版。JUnit 4.12提供了编写和执行测试用例的强大工具,使得开发者可以方便地对代码...

Global site tag (gtag.js) - Google Analytics