org.junit.Assert

引入包,以下两种方式都是OK的,看个人喜好,我倾向于使用第二种,会更加清晰直观。下面的代码我都会用第二种

import static org.junit.Assert.*;
import org.junit.Assert;

Assert是断言的意思,我更喜欢理解为"猜测",比断言要顺口和通俗。如果猜测错误,则抛出java.lang.AssertionError异常

1 - Assert.fail()
让测试直接出错,抛出 AssertionError 。
2 - Assert.fail(String message)
让测试直接出错,并在抛出 AssertionError 时输出 message 作为错误提示信息。
3 - Assert.assertNull(Object object)
猜测 object 为 null,如果不为 null ,抛出 AssertionError 。
4 - Assert.assertNull(String message, Object object)
猜测 object 为 null。
如果不为 null ,在抛出 AssertionError 时输出 message 作为错误提示信息。
5 - Assert.assertNotNull(Object object)
猜测 object 不为 null,如果为 null ,抛出 AssertionError 。
6 - Assert.assertNotNull(String message, Object object)
猜测 object 不为 null。
如果为 null ,在抛出 AssertionError 时输出 message 作为错误提示信息。
7 - Assert.assertSame(Object expected, Object actual)
猜测 expected 对象和 actual 对象引用的是同一个对象。
如果不同,抛出 AssertionError 。
8 - Assert.assertSame(String message, Object expected, Object actual)
猜测 expected 对象和 actual 对象引用的是同一个对象。
如果不同,在抛出 AssertionError 时输出 message 作为错误提示信息。
9 - Assert.assertNotSame(Object expected, Object actual)
猜测 expected 对象和 actual 对象引用不同的对象。
如果相同,抛出 AssertionError 。
10 - Assert.assertNotSame(String message, Object expected, Object actual)
猜测 expected 对象和 actual 对象引用不同的对象。
如果相同,在抛出 AssertionError 时输出 message 作为错误提示信息。
11 - Assert.assertTrue(boolean condition)
猜测 condition 为 true 。
如果为 false ,抛出 AssertionError 。
12 - Assert.assertTrue(String message, boolean condition)
猜测 condiiton 为 true 。
如果为 false , 在抛出 AssertionError 时输出 message 作为错误提示信息。
13 - Assert.assertFalse(boolean condition)
猜测 condition 为 false 。
如果为 true , 抛出 AssertionError 。
14 - Assert.assertFalse(String message, boolean condition)
猜测 condiiton 为 false 。
如果为 true , 在抛出 AssertionError 时输出 message 作为错误提示信息。
15 - Assert.assertEquals(long expected, long actual)
猜测两个 long 类型 expected 和 actual 的值相等。
如果不相等,抛出 AssertionError 。
16 - Assert.assertEquals(String message, long expected, long actual)
猜测两个 long 类型 expected 和 actual 的值相等。
如果不相等,在抛出 AssertionError 时输出 message 作为错误提示信息。
17 - Assert.assertNotEquals(long unexpected, long actual)
猜测两个 long 类型 unexpected 和 actual 的值不相等。
如果相等,抛出 AssertionError 。
18 - Assert.assertNotEquals(String message, long unexpected, long actual)
猜测两个 long 类型 expected 和 actual 的值不相等。
如果相等,在抛出 AssertionError 时输出 message 作为错误提示信息。
19 - Assert.assertEquals(Object expected, Object actual)
猜测两个对象相等。
如果不相等,抛出 AssertionError 。
20 - Assert.assertEquals(String message, Object expected, Object actual)
猜测两个对象相等。
如果不相等,在抛出 AssertionError 时输出 message 作为错误提示信息。

注 ---- assertSame()和assertEquals()的区别见参考文章:
JUnit中assertEquals和assertSame方法的不同

21 - Assert.assertNotEquals(Object unexpected, Object actual)
猜测两个对象不相等。
如果相等,抛出 AssertionError 。
22 - Assert.assertNotEquals(String message, Object unexpected, Object actual)
猜测两个对象不相等。
如果相等,在抛出 AssertionError 时输出 message 作为错误提示信息。

注 ---- assertNotSame()和assertNotEquals()的区别与上面 19- 和 20- 的区别类似。

23 - Assert.assertEquals(float expected, float actual, float delta)
猜测两个 float 类型 expect 和 actual 在 delta 偏差值下相等
如果不相等,抛出 AssertionError 。

//例1
Assert.assertEquals(1.1, 1.3, 0.2)    //Pass
//例2
Assert.assertEquals(1.3, 1.1, 0.2)    //Pass
//例3
Assert.assertEquals(1.1, 1.3, 0.1)    //AssertionError
//例4
Assert.assertEquals(1.3, 1.1, 0.1)    //AssertionError
24 - Assert.assertEquals(String message, float expected, float actual, float delta)
猜测两个 float 类型 expect 和 actual 在 delta 偏差值下相等
如果不相等,在抛出 AssertionError 时输出 message 作为错误提示信息。

//例1
Assert.assertEquals("Not equal !",1.1, 1.3, 0.2)    //Pass
//例2
Assert.assertEquals("Not equal !",1.3, 1.1, 0.2)    //Pass
//例3
Assert.assertEquals("Not equal !",1.1, 1.3, 0.1)    //AssertionError : Not equal !
//例4
Assert.assertEquals("Not equal !",1.3, 1.1, 0.1)    //AssertionError : Not equal !
25 - Assert.assertNotEquals(float unexpected, float actual, float delta)
猜测两个 float 类型 unexpected 和 actual 在 delta 偏差值下不相等
如果相等,抛出 AssertionError 。

//例1
Assert.assertNotEquals(1.1, 1.3, 0.1)    //Pass
//例2
Assert.assertNotEquals(1.3, 1.1, 0.1)    //Pass
//例3
Assert.assertNotEquals(1.1, 1.3, 0.2)    //AssertionError
//例4
Assert.assertNotEquals(1.3, 1.1, 0.2)    //AssertionError
26 - Assert.assertNotEquals(String message, float unexpected, float actual, float delta)
猜测两个 float 类型 expect 和 actual 在 delta 偏差值下不相等
如果相等,在抛出 AssertionError 时输出 message 作为错误提示信息。

//例1
Assert.assertNotEquals("Equal !",1.1, 1.3, 0.1)    //Pass
//例2
Assert.assertNotEquals("Equal !",1.3, 1.1, 0.1)    //Pass
//例3
Assert.assertNotEquals("Equal !",1.1, 1.3, 0.2)    //AssertionError : Equal !
//例4
Assert.assertNotEquals("Equal !",1.3, 1.1, 0.2)    //AssertionError : Equal !
27 - Assert.assertEquals(long expected, long actual, long delta)
猜测两个 long 类型 expected 和 actual 在 delta 偏差值下相等
如果不相等,抛出 AssertionError 。
28 - Assert.assertEquals(String message, long expected, long actual, long delta)
猜测两个 long 类型 expect 和 actual 在 delta 偏差值下相等
如果不相等,在抛出 AssertionError 时输出 message 作为错误提示信息。
29 - Assert.assertNotEquals(long unexpected, long actual, long delta)
猜测两个 long 类型 unexpected 和 actual 在 delta 偏差值下不相等
如果相等,抛出 AssertionError 。
30 - Assert.assertNotEquals(String message, long unexpected, long actual, long delta)
猜测两个 long 类型 expect 和 actual 在 delta 偏差值下不相等
如果相等,在抛出 AssertionError 时输出 message 作为错误提示信息。
31~37 - Assert.assertArrayEquals(T[] expected, T[] actual)
猜测两个相同类型的数组的元素一一对应相等。
如果不相等,抛出 AssertionError 。

T 支持的类型有 int、byte、char、long、short、boolean、Object
38~44 - Assert.assertArrayEquals(String message, T[] expected, T[] actual)
猜测两个相同类型的数组的元素一一对应相等。
如果不相等,在抛出 AssertionError 时输出 message 作为错误提示信息。

T 支持的类型有 int、byte、char、long、short、boolean、Object
44~45 - Assert.assertArrayEquals(T[] expected, T[] actual, T delta)
猜测两个相同类型的数组的元素,在 delte 偏差值下一一对应相等。
如果不相等,抛出 AssertionError 。

T 支持的类型有 float、double
46~47 - Assert.assertArrayEquals(String message, T[] expected, T[] actual, T delta)
猜测两个相同类型的数组的元素,在 delte 偏差值下一一对应相等。
如果不相等,在抛出 AssertionError 时输出 message 作为错误提示信息。

T 支持的类型有 float、double
48 - Assert.assertThat(T actual, Matcher<? super T> matcher)
猜测 actual 的值符合规则 matcher。
如果不符合,抛出 AssertionError 。

//例1
Assert.assertThat(1, is(1));               //Pass
//例2
Assert.assertThat(1, greaterThan(0));      //Pass
//例3
Assert.assertThat(1, is(0));               //AssertionError
//例4
Assert.assertThat(1, greaterThan(1));      //AssertionError

注:Matcher 十分灵活,需要引入包import static org.hamcrest.Matchers.*;,更多使用可参考文档: org.hamcrest.Matchers

49 - Assert.assertThat(String reason, T actual, Matcher<? super T> matcher)
猜测 actual 的值符合规则 matcher。
如果不符合,在抛出 AssertionError 时输出 reason 作为错误提示信息。

//例1
Assert.assertThat("not match reason: ...", 1, is(1));          //Pass
//例2
Assert.assertThat("not match reason: ...",1, greaterThan(0));  //Pass
//例3
Assert.assertThat("not match reason: ...",1, is(0));           //AssertionError : not match reason : ...
//例4
Assert.assertThat("not match reason: ...",1, greaterThan(1));  //AssertionError : not match reason : ...
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342