• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • XP 單元測試工具Junit 源代碼學習

    發表于:2008-02-02來源:作者:點擊數: 標簽:單元測試工具junit
    Package framework Class Interface Hierachy Interface Test 主要方法 countTestCases:統計TestCases 數目 run:運行 測試 并將結果返回到指定的TestResult 中 Class Assert 首先,Assert 提供的public 方法都可以帶或不帶自己定義的提示,其次Assert 中的
     Package framework
           Class & Interface Hierachy

           Interface Test
           主要方法
       countTestCases:統計TestCases 數目
       run:運行測試并將結果返回到指定的TestResult 中
           Class Assert
           首先,Assert 提供的public 方法都可以帶或不帶自己定義的提示,其次Assert
    中的Assert 方法是protected 的,這意外著Assert 是一個靜態類,它提供的方法都是Static 的。
           public 方法:
       assert:保留(deprecated)方法,判斷一個條件是否為真
       assertTrue:assert 的替代方法,判斷一個條件是否為真
       assertEquals:用于判斷實際值和期望值是否相同(Equals),可以是各種JAVA
    對象。
       assertNotNull:判斷一個對象是否不為空
       assertNull:判斷一個對象是否為空
       assertSame:判斷實際值和期望值是否為同一個對象( ==),注意和assertEquals
    區分
       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 的祖先。通過這種定義可以保證運行的時候如果出現任何Error 和Exception,都將被拋出而不會導致程序不能繼續運行。
       Portectable 的接口沒有被framework 包中的任何類實現,它的使用在類
       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,實現了Interface Portectable
           Interface TestListener
       TestListener 的用途和它名稱一樣,用于監聽。主要用于運行時刻監聽,BaseRunner(所有運行類,如TestRunner)實現了這一接口。由于運行是通過TestResult 來實現,只要調用 TestResult.addListener 就可以增加監聽,TestResult會調用接口中相應的方法,具體見TestResult。
    主要方法:
           public
       addError:增加錯誤,注意這里錯誤應該指測試程序本身的錯誤或者被測試程
    序錯誤,而不是測試失敗
       addFailure:增加一個測試失敗,專用于AssertionFailedError 的處理
       endTest:結束測試
       startTest:開始測試
           Class TestCase
    使用者最主要使用的類,繼承Class Assert,實現Interface Test。主要方法
          

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>