




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
JUnit測試工具1.JUnit概述JUnit是開源的Java單元測試工具,由Erich
Gamma和Kent
Beck兩人共同開發完成。它可以和Java的開發環境很好的集成,例如在Eclipse、JDK等開發環境中都可以安裝JUnit框架。下載最新版本的JUnit可以訪問網站。1.JUnit概述JUnit的目標簡化測試的編寫,這種簡化包括測試框架的學習和實際測試單元的編寫使測試單元保持持久性可以利用既有的測試來編寫相關的測試。2.JUnit的特點可以使測試代碼與產品代碼分開。更有利于測試代碼的管理和代碼的發布。提供了多種方式來顯示測試結果,而且可以擴展。對不同性質的被測對象,如Class、JSP、Servlet等,JUnit有不同的測試方法。3.為什么要使用JUnit以前,開發人員寫一個方法,如下代碼所示:public
double
abs(doublex){returnx>=0?x:-x;}3.為什么要使用JUnit如果要對Add類的add方法進行測試,通常要在main里編寫相應的測試方法,如下代碼所示:……publicstaticvoidmain(String
args[]){if(abs(-3)==3)){System.out.println(“TestOk”);}else{System.out.println(“TestFail”);}}……3.為什么要使用JUnit缺點:業務代碼和測試代碼放在一起,對于復雜的業務邏輯,代碼量會非常龐大,而且測試代碼會顯得比較凌亂,而JUnit就能改變這樣的狀況,它提供了更好的方法來進行單元測試。三種測試驅動程序設計優缺點:設計方法優點缺點調用Main方法所見即所得,快速得知測試后結果不利于后期測試代碼的維護嵌入靜態測試方法測試代碼調用方便,被測試類無需實例化就可以進行測試不利于后期測試代碼的維護不利于測試代碼的復用交付后的程序必須逐個剔除測試代碼實現獨立測試類測試代碼可復用測試用例獨立于被測試類之外,利于測試代碼的維護經過改進開發,可以一次性執行多個測試用例需要評價被測試類的測試價值,生成新的測試類需要密切關注被測試類的變化3.搭建JUnit的開發環境1.下載JUnit從可以進入到JUnit的首頁,下載junit-4.8.1.jar。2.配置環境變量設定classPath,classPath=***;D:\junit\junit.jar。Annotation含義@Testpublicvoidmethod()定義一個要測試的方法@Beforepublicvoidmethod()在每一個測試之前都會被執行的方法,這個方法常常用來進行一些測試環境的準備,比喻說讀入輸入數據,初始化類@Afterpublicvoidmethod()與@Before進行對應,做一個清理工作@BeforeClasspublicvoidmethod()在所有的測試開始之前執行,這個方法在類運行的時候運行,而且只會運行一次,所以常常用來做一些所有的方法都要依賴到工作,比喻說,數據庫的鏈接。@AfterClasspublicvoidmethod()與@BeforeClass進行對應,做一些類級別的清理工作@Test(expected=IllegalArgumentException.class)檢查測試方法是不是拋出了對應的異常@Test(timeout=100)如果方法的執行操作所耗費的毫秒數>100MS,那么方法失敗。Failure和ErrorFailure指的是由于預期的結果與實際運行的測試的結果不同而導致的,例如當使用assertEquals()或其它方法斷言失敗時,就會報出Failure。Error指的是編寫程序時沒有考慮到的問題。在執行測試的斷言之前,程序就因為某種類型的意外而停止,這個時候你要檢查被測試方法中是不是有欠缺考慮到地方。3.在Eclipse中使用Junit
編寫一個獲取一個數值的絕對值的方法,并對其進行測試。1.編寫類文件com.neusoft.test.FirstEx2.編寫測試用例,,,,3.在Eclipse中使用Junit
setUp()是初始化測試環境;tearDown()用于清理資源,如釋放打開的文件等等。以test開頭的方法被認為是測試方法,JUnit會依次執行testXxx()方法。在testAbs()方法中,對abs()的測試分別選擇正數,負數和0,如果方法返回值與期待結果相同,則assertEquals不會產生異常。如果有多個testXxx方法,JUnit會創建多個XxxTest實例,每次運行一個testXxx方法,setUp()和tearDown()會在testXxx前后被調用,因此,不要在一個testA()中依賴testB()。,3.在Eclipse中使用Junit
綠色表示測試通過,只要有1個測試未通過,就會顯示紅色并列出未通過測試的方法。3.JUnit的使用方法
第一步:編寫測試類,使其繼承TestCase;第二步:編寫測試方法,使用testXxx的方式來命名測試方法;第三步:編寫斷言。如果測試方法有公用的變量等需要初始化和銷毀,則可以使用setUp、tearDown方法。JUnitFrameworkJUnit核心TestCase(測試用例):由開發者編寫,擴展了JUnit的TestCase類,以testXxx方法的形式包含一個或多個測試.TestSuite(測試集合):一組TestCase的集合,把多個相關測試歸入一組的便捷方式。TestRunner(測試運行器):執行testsuite的程序.這三個類是JUnit框架的骨干。JUnit核心Test:運行測試并把結果傳遞給TestResult。Assert:當條件成立時assert方法保持沉默,但若條件不成立就拋出異常。TestResult:測試結果的描述與記錄TestListener:測試過程中的事件監聽者前三個類和后4個類緊密配合,形成JUnit框架的核心。JUnit斷言 在程序中特定部位插入某些用以判斷變量特性的語句,使得程序執行中這些語句得以證實,從而使程序的運行特性得到證實。我們把插入的這些語句稱為斷言。
JUnit斷言JUnit主要有以下斷言:assertEquals(期望值,實際值),檢查兩個值是否相等。assertEquals(期望對象,實際對象),檢查兩個對象是否相等,利用對象的equals()方法進行判斷。assertSame(期望對象,實際對象),檢查具有相同內存地址的兩個對象是否相等,利用內存地址進行判斷,注意和上面assertEquals方法的區別。JUnit斷言assertNotSame(期望對象,實際對象),檢查兩個對象是否不相等。assertNu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海洋氣象災害歷史案例分析考核試卷
- 旅游業客戶體驗提升措施
- 促進小學生心理健康的措施
- 通風電器具生產過程信息化管理考核試卷
- 木業車間用電管理制度
- 機電公司質量管理制度
- 建設單位五項管理制度
- 藤編工藝基礎知識考核試卷
- 技術文件歸檔管理制度
- 纖維原料的抗靜電性能與應用考核試卷
- 2025年普通話水平測試考試試卷及答案
- 2025年地理高考復習 熱點專練 黑吉遼熱點01 傳統文化(解析版)
- 運維自動化流程設計-全面剖析
- 2024北京海淀區五年級(下)期末語文試題及答案
- 2024年重慶萬州公開招聘社區工作者考試試題答案解析
- 湖北省武漢華中師大一附中2025年高考沖刺押題(最后一卷)語文試卷含解析
- 錦州師專2025年單招語文試題庫及答案
- 南寧市第十四中學2025年春八下歷史期中測試卷
- 二級注冊計量師題庫附答案2025
- 國家電網有限公司輸變電工程通 用設計(330~750kV輸電線路絕緣子金具串通 用設計分冊)2024版
- 2025年手術授權理論考核試題
評論
0/150
提交評論