您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
XP單元測試工具Junit源代碼學習
作者:網絡轉載 發(fā)布時間:[ 2013/1/30 13:52:13 ] 推薦標簽:

 Package framework
       Class & Interface Hierachy

       Interface Test
       主要方法
   countTestCases:統(tǒng)計TestCases 數(shù)目
   run:運行測試并將結果返回到指定的TestResult 中
       Class Assert
       首先,Assert 提供的public 方法都可以帶或不帶自己定義的提示,其次Assert
中的Assert 方法是protected 的,這意外著Assert 是一個靜態(tài)類,它提供的方法都是Static 的。
       public 方法:
   assert:保留(deprecated)方法,判斷一個條件是否為真
   assertTrue:assert 的替代方法,判斷一個條件是否為真
   assertEquals:用于判斷實際值和期望值是否相同(Equals),可以是各種JAVA
對象。
   assertNotNull:判斷一個對象是否不為空
   assertNull:判斷一個對象是否為空
   assertSame:判斷實際值和期望值是否為同一個對象( ==),注意和assertEquals
區(qū)分
   fail:直接返回失敗,拋出AssertionFailedError
       private 方法:
   failNotEquals:主要用于assertEquals 方法,調用fail 返回失敗提示
   failNotSame:主要用于assertSame 方法,調用fail 返回失敗提示
       Class AssertionFailedError
   AssertionFailedError 是從Jdk 提供Error 類簡單繼承而來,主要方法如下:
   public AssertionFailedError (String message) {
   super (message);
   }
   Class Assert 中比較失敗都是拋出AssertionFailedError。
       Interface Protectable
   這個接口是使用了一種比較少見的用法。
在Interface 本身只定義了一個方法
   public abstract void protect() throws Throwable;注意方法throws 的是所有Error 和Exception 的祖先。通過這種定義可以保證運行的時候如果出現(xiàn)任何Error 和Exception,都將被拋出而不會導致程序不能繼續(xù)運行。
   Portectable 的接口沒有被framework 包中的任何類實現(xiàn),它的使用在類
   TestResult 中的run 方法中。以下是run 方法中代碼:
   protected void run(final TestCase test) {
   startTest(test);
   Protectable p= new Protectable() {
   public void protect() throws Throwable {
   test.runBare();
   }
   };
   runProtected(test, p);
   endTest(test);
   }
   這里實際是聲明了一個Anonymous Classes,實現(xiàn)了Interface Portectable
       Interface TestListener
   TestListener 的用途和它名稱一樣,用于監(jiān)聽。主要用于運行時刻監(jiān)聽,BaseRunner(所有運行類,如TestRunner)實現(xiàn)了這一接口。由于運行是通過TestResult 來實現(xiàn),只要調用 TestResult.addListener 可以增加監(jiān)聽,TestResult會調用接口中相應的方法,具體見TestResult。
主要方法:
       public
   addError:增加錯誤,注意這里錯誤應該指測試程序本身的錯誤或者被測試程
序錯誤,而不是測試失敗
   addFailure:增加一個測試失敗,專用于AssertionFailedError 的處理
   endTest:結束測試
   startTest:開始測試
       Class TestCase
使用者主要使用的類,繼承Class Assert,實現(xiàn)Interface Test。主要方法

軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd