一、字符相关匹配符
1、equalTo:
assertThat(testedValue, equalTo(expectedValue));
断言被测的testedValue等于expectedValue,equalTo可以断言数值之间,字符串之间和对象之间是否相等,相当于Object的equals方法
2、equalToIgnoringCase:
assertThat(testedString, equalToIgnoringCase(expectedString));
断言被测的字符串testedString在忽略大小写的情况下等于expectedString
3、equalToIgnoringWhiteSpace:
assertThat(testedString, equalToIgnoringWhiteSpace(expectedString);
断言被测的字符串testedString在忽略头尾的任意个空格的情况下等于expectedString
(注意:字符串中的空格不能被忽略)
4、containsString:
assertThat(testedString, containsString(subString) );
断言被测的字符串testedString包含子字符串subString
5、endsWith:
assertThat(testedString, endsWith(suffix));
断言被测的字符串testedString以子字符串suffix结尾
6、startsWith:
assertThat(testedString, startsWith(prefix));
断言被测的字符串testedString以子字符串prefix开始
二、一般匹配符
1、nullValue():
assertThat(object,nullValue());
断言被测object的值为null*/
2、notNullValue():
assertThat(object,notNullValue());
断言被测object的值不为null*/
3、is:
assertThat(testedString, is(equalTo(expectedValue)));
断言被测的object等于后面给出匹配表达式
1)is匹配符简写应用之一:
assertThat(testedValue, is(expectedValue));
is(equalTo(x))的简写,断言testedValue等于expectedValue
2)is匹配符简写应用之二:
assertThat(testedObject, is(Cheddar.class));
is(instanceOf(SomeClass.class))的简写,断言testedObject为Cheddar的实例
4、not:
assertThat(testedString, not(expectedString));
与is匹配符正好相反,断言被测的object不等于后面给出的object
5、allOf:
assertThat(testedNumber, allOf( greaterThan(8), lessThan(16) ) );
断言符合所有条件,相当于“与”(&&)
6、anyOf:
assertThat(testedNumber, anyOf( greaterThan(16), lessThan(8) ) );
断言符合条件之一,相当于“或”(||)
三、数值相关匹配符
1、closeTo:
assertThat(testedDouble, closeTo( 20.0, 0.5 ));
断言被测的浮点型数testedDouble在20.0-0.5 ~ 20.0+0.5范围之内
2、greaterThan:
assertThat(testedNumber, greaterThan(16.0));
断言被测的数值testedNumber大于16.0
3、lessThan:
assertThat(testedNumber, lessThan (16.0));
断言被测的数值testedNumber小于16.0
4、greaterThanOrEqualTo:
assertThat(testedNumber, greaterThanOrEqualTo (16.0));
断言被测的数值testedNumber大于等于16.0
5、lessThanOrEqualTo:
assertThat(testedNumber, lessThanOrEqualTo (16.0));
断言被测的testedNumber小于等于16.0
四、集合相关匹配符
1、hasEntry:
assertThat(mapObject, hasEntry("key", "value" ) );
断言被测的Map对象mapObject含有一个键值为"key"对应元素值为"value"的Entry项
2、hasItem:
assertThat(iterableObject, hasItem (element));
表明被测的迭代对象iterableObject含有元素element项则测试通过
3、hasKey:
assertThat(mapObject, hasKey ("key"));
断言被测的Map对象mapObject含有键值“key”
4、hasValue:
assertThat(mapObject, hasValue(value));
断言被测的Map对象mapObject含有元素值value
源:http://houmaolin0521.blog.163.com/blog/static/11335164920121018101658230/
相关推荐
### 单元测试JUnit常用断言方法 #### JUnit简介 JUnit是一款用于Java语言的单元测试框架,由Kent Beck与Erich Gamma共同开发维护。它主要用于编写和运行可重复的测试案例,帮助开发者确保代码质量并及时发现潜在...
### JUnit常用断言方法详解 #### 一、概述 JUnit 是一个用于编写和运行可重复测试的框架,主要用于Java程序的单元测试。在进行单元测试时,我们经常需要使用到断言方法来验证被测代码的行为是否符合预期。本文将...
JUnit4 提供了多种断言方法,例如: * assertArrayEquals:断言两个数组相等 * assertEquals:断言两个对象相等 * assertSame:断言两个对象相同 * assertTrue:断言条件为真 * assertNotNull:断言对象不为 null ...
JUnit 是Java编程语言中广泛使用的单元测试框架,它提供了一系列的断言方法来帮助开发者验证代码的行为。这些断言方法允许我们检查程序执行的结果是否符合预期,从而找出潜在的错误。以下是对标题和描述中提到的...
然而,对于返回类型为 `void` 的方法,由于其没有显式的返回值,传统的 Junit 断言方法(如 `assertEquals`)无法直接应用于这类方法的测试。本文将详细介绍如何使用 Junit 测试 `void` 类型的方法,并提供一个具体...
总之,这个"Junit4的小实例程序"是一个很好的学习资源,通过它,你可以学习到如何使用JUnit4进行单元测试,包括创建测试类、编写测试方法、使用断言以及了解测试生命周期等核心概念。实践这些示例,将有助于提升你的...
2. **断言(Assertions)**:JUnit提供了一系列的断言方法,如`assertEquals()`、`assertTrue()`、`assertFalse()`等,用于验证测试结果是否符合预期。 3. **异常测试**:`@Test(expected = Exception.class)`可以...
JUnit4提供了丰富的断言方法,如`assertEquals`, `assertTrue`, `assertNull`等,用于检查程序的实际行为是否符合预期。 ### 3. 测试规则 - `@Rule`: 可以定义自定义的行为,如`ExpectedException`规则用于捕获...
与传统的关键字(如 public、static)类似,注解可以用来描述代码的不同方面,例如在 JUnit4 中,`@Test` 注解被用来标识一个测试方法。 #### 二、JUnit4 中注解的应用 在 JUnit4 中,注解的引入极大地提高了测试...
本文档介绍了JUnit4的基础知识,包括单元测试的概念、JUnit4的HelloWorld示例、断言机制、注解使用、测试运行方式等。 单元测试的概念 单元测试是指对软件的最小单元进行测试,以确保其正确性和可靠性。单元测试...
在 JUnit 4 中,除了基本的断言方法,如 `assertEquals`,还有其他的一些断言方法,例如 `assertTrue`,`assertFalse`,`assertNull` 等,它们提供了更多的测试条件。这些断言方法用于验证被测试代码的行为是否符合...
JUnit4 提供了多种断言方法,如 `assertEquals()`、`assertTrue()`、`assertFalse()` 等,用于验证预期结果。例如,`assertEquals(expected, actual)` 检查实际值与期望值是否相等。 3. **异常测试**: 使用 `@...
在JUnit4中,我们可以使用断言(Assertion)来验证代码的结果是否符合预期。例如,`assertEquals(expected, actual)`用于检查两个对象是否相等,`assertTrue(condition)`和`assertFalse(condition)`判断一个布尔条件...
`hamcrest-core-1.3.jar`是JUnit4中的匹配器库,它提供了丰富的断言类,使得测试表达更加清晰且更具可读性。Hamcrest匹配器允许开发者定义预期结果,并以一种声明式的方式检查实际结果是否符合预期。例如,`...
测试方法中,JUnit4提供了一些断言方法,如`assertEquals`、`assertTrue`等,用于检查预期结果与实际结果的相符性。例如,`assertEquals(expected, actual)`用于验证两个对象或值是否相等,`assertTrue(condition)`...
在JUnit4中,`Assert`类提供了多种断言方法,如`assertEquals()`用于验证预期结果与实际结果是否相等,`assertTrue()`和`assertFalse()`用于验证条件是否满足。这些断言方法是编写测试用例的基础,通过它们可以判断...
JUnit 提供了丰富的断言方法来帮助开发者进行单元测试,每个断言都有其特定的应用场景。理解并熟练掌握这些断言对于提高代码质量至关重要。开发者可以根据具体需求选择合适的断言方法来验证代码的行为,从而确保程序...
断言是单元测试的核心部分,JUnit4提供了一系列的断言方法,如assertEquals()用于比较预期结果和实际结果是否相等,assertTrue()和assertFalse()用于判断条件是否满足。如果断言失败,JUnit会生成一个错误报告,帮助...
- **Assertions**:JUnit提供了多种断言方法,如`assertEquals`、`assertTrue`等,用于验证代码的预期行为。 - **Test Runner**:负责运行测试用例的组件,如默认的`BlockJUnit4ClassRunner`,可以被其他自定义...
除此之外,JUnit4还支持参数化测试,通过`@Parameters`注解和`parameters()`方法可以为测试方法提供多组输入数据,实现对同一函数的多次测试。这对于测试具有多种输入情况的函数非常有用。 异常测试也是JUnit4的一...