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

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

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

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

    軟件測試之基于J2EE應用的單元測試技術

    發布: 2009-7-17 09:51 | 作者: 不祥 | 來源: 領測軟件測試網采編 | 查看: 98次 | 進入軟件測試論壇討論

    領測軟件測試網 軟件測試之基于J2EE應用的單元測試技術 單元測試工具

    基于J2EE架構的測試非常昂貴和復雜,尤其是進行系統測試時,這里我們只討論一些自盒測試方法來實現J2EE單元測試的過程和方法。

      1測試原則

      Jaya語言是一種支持面向對象的語言,通常情況下,我們可以將程序的一個單元看成一個獨立的類。因此進行單元測試的重點就是針對這些類進行測試。

      最佳的方法就是測試類中定義的方法。如果父類為抽象類,為進行測試可以簡單定義一個具體予類,它只利用了父類的抽象方法,而無其他行為。然而,這樣做可能會忽略建立的子類將隨著父類結構變化而變化,以及編譯器或者其他測試過程中不能捕獲的信息,從而導致一些遺漏,我們需要遵循一些基本的原則來進行測試:

      ·  不需要測試get和set這樣的行為。

      ·  一個方法至少要測試一次。

      ·  各種訪問、修改器也對測試產生影響。

    2測試步驟                                  

    ·  判斷組件的功能:通過定義應用的整體需求,然后將系統劃分成幾個對象,我們需要對組件的基本功能十分清楚。因此,J2EE單元測試實際上也屬于設計過程的一部分。

    ·  設計組件行為:依據所處理的過程,可以通過一個正規或者非正規的過程實現組件行為的設計,我們可以使用uML或者其他文檔視圖來設計組件行為,從而為組件的測試打下基礎。

    ·  編寫單元測試程序(或測試用例)確認組件行為:這個階段,應該假定組件的編碼已經結束而且組件工作正常。我們需要編寫單元測試程序來確定其功能是否和預定義的功能相同,測試程序需要考慮所有正常和意外的輸入,以及特定的方法能產生溢出。

    ·  編寫組件并執行測試:首先,創建類及其所對應的方法標識,然后遍歷每個測試  實例,為其編寫相應代碼使其順利通過,然后返回測試,繼續這個過程直至所有實例通過。此時,停止編碼。

    ·  測試替代品:對組件行為的其他方式進行考慮,設計更周全的輸入或者其他錯誤條件,編寫測試用例米捕獲這些條件,然后修改代碼使得測試通過。

    ·  重整代碼:如果有必要,在編碼結束時,對代碼進行重整和優化,改動后,返回單元測試并確認測試通過。

    ·  當組件有新的行為時,編寫新的測試用例:每次在組件中發現故障,編寫一個測試實例重復這個故障,然后修改組件以保證測試實例通過。同樣.當發現新的需求或已有的需求改變時,編寫或修改測試實例以響應此改變,然后修改代碼。

    ·  代碼修改,返回所有的測試:每次代碼修改時,返回所有的測試以確保沒有打亂代碼。

    延伸閱讀

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

    TAG: 單元 單元測試工具 技術 軟件測試 應用


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