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

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

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    用JUnit框架實現Java單元測試

    發布: 2008-5-28 16:50 | 作者: 網絡轉載 | 來源: 網絡轉載 | 查看: 223次 | 進入軟件測試論壇討論

    領測軟件測試網

     隨著軟件項目的逐漸增大,軟件測試在軟件開發中的地位顯得越來越重要。如果軟件項目沒有良好的測試流程,隨著系統的增大,無論項目管理人員還是軟件開發人員都會對項目的前景失去信心,甚至會對項目的目標產生分歧,因為長期以來沒有對程序代碼和系統設計進行有效的控制,很多問題都被暫時掩蓋或逐漸演化成其他的問題。軟件開發周期越長,就會使得問題進化的版本越多,最后造成的結果是“剪不斷,理還亂”。
      單元測試是整個測試流程中最基礎的部分,它們要求程序員盡可能早地發現問題,并給予控制,這是其一。另外,如果集成測試出現問題,它們可以幫助診斷。這樣就為在軟件開發流程中建立高效的事件反應機制打下了堅實基礎。
      JUnit就是為Java程序開發者實現單元測試提供一種框架,使得Java單元測試更規范有效,并且更有利于測試的集成。
      JUnit的內部結構
      JUnit的軟件結構
      JUnit 共有七個包,核心的包就是junit.framework 和junit.runner。Framework包負責整個測試對象的構架,Runner負責測試驅動。
      JUnit的類結構
      JUnit有四個重要的類:TestSuite、TestCase、TestResult、TestRunner。前三個類屬于Framework包,后一個類在不同的環境下是不同的。這里使用的是文本測試環境,所以用的是 junit.textui.TestRunner。各個類的職責如下:
      1.TestResult,負責收集TestCase所執行的結果,它將結果分為兩類,客戶可預測的Failure和沒有預測的Error。同時負責將測試結果轉發到TestListener(該接口由TestRunner繼承)處理;
      2.TestRunner,客戶對象調用的起點,負責對整個測試流程的跟蹤。能夠顯示返回的測試結果,并且報告測試的進度。
      3.TestSuite, 負責包裝和運行所有的TestCase。
      4.TestCase, 客戶測試類所要繼承的類,負責測試時對客戶類進行初始化,以及測試方法調用。
      另外還有兩個重要的接口:Test和TestListener。
      1.Test, 包含兩個方法:run() 和countTestCases(),它是對測試動作特征的提取。
      2.TestListener, 包含四個方法:addError()、addFailure()、startTest()和endTest(),它是對測試結果的處理以及測試驅動過程的動作特征的提取。
      下面給出的兩個類圖(篇幅有限,只顯示主要部分)很好地闡明了類之間的關系,以及junit的設計目標(如圖1)。測試案例的類采用Composite模式。這樣,客戶的測試對象就轉變成一個“部分—整體”的層次結構?蛻舸a僅需要繼承類TestCase,就可以輕松的與已有的其他對象組合使用,從而使得單元測試的集成更加方便。
       
      圖1 測試結構圖


      圖2是測試跟蹤類圖。

    圖2左邊TestSuite包含了測試對象集合,右邊包含了測試結果集。具體如何處理結果,以及包含哪些測試對象,并沒有立即得出結論,而是盡量地延遲到具體實現的時候。例如,實現接口TestListener的JUnit中就含有:junit.awtui.TestRunner、junit.swingui. TestRunner、junit.ui.TestRunner等,甚至客戶用自己的類實現TestListener,從而達到多樣化的目的。
       
      
      從以上兩個類圖,可以了解JUnit對單元測試的基本思路,這個框架的核心就是結果集和案例集。
     

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: java JAVA Java junit Junit JUnit 單元 框架

    31/3123>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品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>