日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JUnit的各种断言

發(fā)布時(shí)間:2025/3/18 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JUnit的各种断言 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

JUnit為我們提供了一些輔助函數(shù),他們用來幫助我們確定被測(cè)試的方法是否按照預(yù)期的效果正常工作,通常,把這些輔助函數(shù)稱為斷言。下面我們來介紹一下JUnit的各種斷言。

斷言是編寫測(cè)試用例的核心實(shí)現(xiàn)方式,即期望值是多少,測(cè)試的結(jié)果是多少,以此來判斷測(cè)試是否通過。

斷言核心方法

assertArrayEquals(expecteds, actuals) 查看兩個(gè)數(shù)組是否相等。

assertEquals(expected, actual) 查看兩個(gè)對(duì)象是否相等。類似于字符串比較使用的equals()方法

assertNotEquals(first, second) 查看兩個(gè)對(duì)象是否不相等。

assertNull(object) 查看對(duì)象是否為空。

assertNotNull(object) 查看對(duì)象是否不為空。

assertSame(expected, actual) 查看兩個(gè)對(duì)象的引用是否相等。類似于使用“==”比較兩個(gè)對(duì)象

assertNotSame(unexpected, actual) 查看兩個(gè)對(duì)象的引用是否不相等。類似于使用“!=”比較兩個(gè)對(duì)象

assertTrue(condition) 查看運(yùn)行結(jié)果是否為true。

assertFalse(condition) 查看運(yùn)行結(jié)果是否為false。

assertThat(actual, matcher) 查看實(shí)際值是否滿足指定的條件

fail() 讓測(cè)試失敗


注解

@Before 初始化方法

@After 釋放資源

@Test 測(cè)試方法,在這里可以測(cè)試期望異常和超時(shí)時(shí)間

@Ignore 忽略的測(cè)試方法

@BeforeClass 針對(duì)所有測(cè)試,只執(zhí)行一次,且必須為static void

@AfterClass 針對(duì)所有測(cè)試,只執(zhí)行一次,且必須為static void

@RunWith 指定測(cè)試類使用某個(gè)運(yùn)行器

@Parameters 指定測(cè)試類的測(cè)試數(shù)據(jù)集合

@Rule 允許靈活添加或重新定義測(cè)試類中的每個(gè)測(cè)試方法的行為

@FixMethodOrder 指定測(cè)試方法的執(zhí)行順序


一個(gè)測(cè)試類單元測(cè)試的執(zhí)行順序?yàn)?#xff1a;

@BeforeClass –> @Before –> @Test –> @After –> @AfterClass

每一個(gè)測(cè)試方法的調(diào)用順序?yàn)?#xff1a;

@Before –> @Test –> @After



   1、assertEquals
  函數(shù)原型1:assertEquals([String message],expected,actual)

參數(shù)說明:
??message是個(gè)可選的消息,假如提供,將會(huì)在發(fā)生錯(cuò)誤時(shí)報(bào)告這個(gè)消息。
  expected是期望值,通常都是用戶指定的內(nèi)容。
? actual是被測(cè)試的代碼返回的實(shí)際值。
例:assertEquals("equals","1","1");

  函數(shù)原型2:assertEquals([String message],expected,actual,tolerance)
參數(shù)說明:
? message是個(gè)可選的消息,假如提供,將會(huì)在發(fā)生錯(cuò)誤時(shí)報(bào)告這個(gè)消息。
  expected是期望值,通常都是用戶指定的內(nèi)容。
  actual是被測(cè)試的代碼返回的實(shí)際值。
  tolerance是誤差參數(shù),參加比較的兩個(gè)浮點(diǎn)數(shù)在這個(gè)誤差之內(nèi)則會(huì)被認(rèn)為是相等的。
  例:assertEquals ("yes",5.8,11.0/2.0,0.5);

  2、assertTrue
   函數(shù)原型:assertTrue ([String message],Boolean condition)
   參數(shù)說明:
????message是個(gè)可選的消息,假如提供,將會(huì)在發(fā)生錯(cuò)誤時(shí)報(bào)告這個(gè)消息。
? ? ?condition是待驗(yàn)證的布爾型值。
   該斷言用來驗(yàn)證給定的布爾型值是否為真,假如結(jié)果為假,則驗(yàn)證失敗。當(dāng)然,更有驗(yàn)證為假的測(cè)試條件:

? ?函數(shù)原型:assertFalse([String message],Boolean condition)
? ? ? 該斷言用來驗(yàn)證給定的布爾型值是否為假,假如結(jié)果為真,則驗(yàn)證失敗。
? ? ? ?例: assertTrue("true",1==1);
? ? ? ? ? assertFalse("false",2==1);

  3、assertNull
  函數(shù)原型:assertNull([String message],Object object)
參數(shù)說明:
? ?message是個(gè)可選的消息,假如提供,將會(huì)在發(fā)生錯(cuò)誤時(shí)報(bào)告這個(gè)消息。
  object是待驗(yàn)證的對(duì)象。
  該斷言用來驗(yàn)證給定的對(duì)象是否為null,假如不為null,則驗(yàn)證失敗。相應(yīng)地,還存在能夠驗(yàn)證非null的斷言:
  函數(shù)原型:assertNotNull([String message],Object object)
該斷言用來驗(yàn)證給定的對(duì)象是否為非null,假如為null,則驗(yàn)證失敗。
例:assertNull("null",null);
? ?assertNotNull("not null",new String());

  4、assertSame
  函數(shù)原型:assertSame ([String message], expected,actual)
參數(shù)說明:
? message是個(gè)可選的消息,假如提供,將會(huì)在發(fā)生錯(cuò)誤時(shí)報(bào)告這個(gè)消息。
  expected是期望值。
  actual是被測(cè)試的代碼返回的實(shí)際值。
  該斷言用來驗(yàn)證expected參數(shù)和actual參數(shù)所引用的是否是同一個(gè)對(duì)象,假如不是,則驗(yàn)證失敗。相應(yīng)地,也存在驗(yàn)證不是同一個(gè)對(duì)象的斷言:

  函數(shù)原型:assertNotSame ([String message], expected,actual)
該斷言用來驗(yàn)證expected參數(shù)和actual參數(shù)所引用的是否是不同對(duì)象,假如所引用的對(duì)象相同,則驗(yàn)證失敗。
例:assertSame("same",2,4-2);
? ?assertNotSame("not same",2,4-3);

  5、Fail
  函數(shù)原型:Fail([String message])
參數(shù)說明:
? ?message是個(gè)可選的消息,假如提供,將會(huì)在發(fā)生錯(cuò)誤時(shí)報(bào)告這個(gè)消息。
  該斷言會(huì)使測(cè)試立即失敗,通常用在測(cè)試不能達(dá)到的分支上(如異常)。

轉(zhuǎn)載于:https://blog.51cto.com/zlfwmm/1761751

總結(jié)

以上是生活随笔為你收集整理的JUnit的各种断言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。