Java高級視頻,JUnit 測試原理與應用,JUnit是一個單元測試框架,使用注解的形式來指定需要測試的方法。JUnit測試其實就是執(zhí)行一個類中的方法,且僅用于測試,稱之為測試類,使用@Test注解標注。
1、JUnit測試是什么?
JUnit是一個Java語言的單元測試框架。它由KentBeck和ErichGamma建立,逐漸成為源于KentBeck的sUnit的xUnit家族中最為成功的一個。JUnit有它自己的JUnit擴展生態(tài)圈。多數(shù)Java的開發(fā)環(huán)境都已經(jīng)集成了JUnit作為單元測試的工具。
JUnit是由ErichGamma和KentBeck編寫的一個回歸測試框架。JUnit測試是程序員測試,即所謂白盒測試,因為程序員知道被測試的軟件如何完成功能和完成什么樣的功能。JUnit是一套框架,繼承TestCase類,就可以用JUnit進行自動測試了。
JUnit測試類似于c語言中的調(diào)試,只不過那個調(diào)試是通過設置斷點分隔代碼來進行測試;而java中的JUnit則是通過分開測試不同的類和方法實現(xiàn)的。
2、JUnit運行環(huán)境
JUnit可以通過ide實現(xiàn)快捷的測試,我這里使用的是eclipse,在需要測試的類那里添加new-other-java-JUnit即可進行測試。這里采用的是JUnit4進行調(diào)試,最新的JUnit版本為JUnit5.關于這兩種版本的區(qū)別,最顯著的區(qū)別是在支持版本上的區(qū)別:java4支持java5及以上的版本,而java5則只支持java8以上的版本。
3、JUnit命名約定
JUnit測試有幾個潛在命名約定。一種廣泛的解決方案就是在測試類的名字末尾添加“Test”后綴。
作為一般的規(guī)則,每個測試方法的名稱應該明確說明當前的測試任務。如果該測試方法正確地完成了,就避免了再去實際代碼中查看實現(xiàn)邏輯。
還有一種約定就是在測試方法名稱中使用“should"。例如,"ordersShouldBeCreated"或者”menuShouldGetActive"。這樣就可以提示我們這個測試方法都做了什么。另一種方法是用“Given[ExplainYourInput]When[WhatIsDone]Then[ExpectedResult]”來作為測試方法的名字。
4、測試執(zhí)行順序
JUnit假定所有的測試方法都可以按任意的順序執(zhí)行。質量高的測試代碼不應該假定任何的順序,就是說,一段測試代碼不能依賴其他的測試代碼。
在JUnit4.11中,默認使用的是確定的但不可預測的順序來執(zhí)行測試的(AsofJUnit4.11thedefaultistouseadeterministic,butnotpredictable,orderfortheexecutionofthetests.)
當然你可以使用注解的方式來定義測試方法的名稱以字典順序排序。如果想開啟此功能,需要使用@FixMethodOrder(MethodSorters.NAME_ASCENDING)注解標注這個測試類,你也可以通過設置MethodSorters.DEFAULT參數(shù)來明確使用默認值。也可以使用MethodSorters.JVM明確它使用JVM的默認值。
以上就是深圳達內(nèi)教育java培訓機構的小編針對“學Java哪里最好,適合零基礎Java的課程”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。
Java視頻