您的位置:首页 > 其它

JUnit 断言

2013-12-02 10:09 169 查看
一、字符相关匹配符

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

1、assertEquals

  函数原型1:assertEquals([String message],expected,actual)

参数说明:

message是个可选的消息,假如提供,将会在发生错误时报告这个消息。

  expected是期望值,通常都是用户指定的内容。

actual是被测试的代码返回的实际值。

例:assertEquals("equals","1","1");

  函数原型2:assertEquals([String message],expected,actual,tolerance)

参数说明:

message是个可选的消息,假如提供,将会在发生错误时报告这个消息。

  expected是期望值,通常都是用户指定的内容。

  actual是被测试的代码返回的实际值。

  tolerance是误差参数,参加比较的两个浮点数在这个误差之内则会被认为是

  相等的。

  例:assertEquals ("yes",5.8,11.0/2.0,0.5);

  2、assertTrue

   函数原型:assertTrue ([String message],Boolean condition)

   参数说明:

message是个可选的消息,假如提供,将会在发生错误时报告这个消息。

       condition是待验证的布尔型值。

   该断言用来验证给定的布尔型值是否为真,假如结果为假,则验证失败。当然,更有验证为假的测试条件:

          函数原型:assertFalse([String message],Boolean condition)

          该断言用来验证给定的布尔型值是否为假,假如结果为真,则验证失败。

       例: assertTrue("true",1==1);

              assertFalse("false",2==1);

  3、assertNull

  函数原型:assertNull([String message],Object object)

参数说明:

message是个可选的消息,假如提供,将会在发生错误时报告这个消息。

  object是待验证的对象。

  该断言用来验证给定的对象是否为null,假如不为null,则验证失败。相应地,还存在能够验证非null的断言:

  函数原型:assertNotNull([String message],Object object)

该断言用来验证给定的对象是否为非null,假如为null,则验证失败。

例:assertNull("null",null);

       assertNotNull("not null",new String());

  4、assertSame

  函数原型:assertSame ([String message], expected,actual)

参数说明:

message是个可选的消息,假如提供,将会在发生错误时报告这个消息。

  expected是期望值。

  actual是被测试的代码返回的实际值。

  该断言用来验证expected参数和actual参数所引用的是否是同一个对象,假如不是,则验证失败。相应地,也存在验证不是同一个对象的断言:

  函数原型:assertNotSame ([String message], expected,actual)

该断言用来验证expected参数和actual参数所引用的是否是不同对象,假如所引用的对象相同,则验证失败。

例:assertSame("same",2,4-2);

        assertNotSame("not same",2,4-3);

  5、Fail

  函数原型:Fail([String message])

参数说明:

message是个可选的消息,假如提供,将会在发生错误时报告这个消息。

  该断言会使测试立即失败,通常用在测试不能达到的分支上(如异常)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: