• <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測試程序

    發布: 2007-7-01 18:47 | 作者: admin | 來源: | 查看: 74次 | 進入軟件測試論壇討論

    領測軟件測試網 JUnit測試程序編寫規范


    一、 程序命名規范

    1.測試類的命名

    測試類的命名規則是:被測試類的類名+Test

    比如有一個類叫IrgSrhDelegate,那么它的測試類的命名就是IrgSrhDelegateTest



    2.測試用例的命名

    測試用例的命名規則是:test+用例方法名稱

    比如要測試的方法叫updateData,那么測試用例的命名就是testUpdateData

    (說明:“用例方法”就是指被測試的類中所包含的方法,而“測試用例”就是指測試類中所包含的方法)

    比如IrgSrhDelegate中有一個方法叫做findByIrgFindParam,那么在IrgSrhDelegateTest中對應的測試用例名稱就是testFindByIrgFindParam。



    3.其它命名規范

    本規范未說明的其它命名規范請參照《JAVA語言編碼規范》(ENO-W063-JAVA Coding Rule.doc)。



    二、 測試程序的包名定義規范

    為了保持測試程序的獨立和穩定性,請按照下面的方式組織測試程序:

    假如被測試類的包名是com.wistrons.util,那么測試類的包名就是test.com.wistrons.util。也就是說在被測試類的包名前加上“test.”,這就是測試類的包名。



    三、 測試數據的準備方案

    準備測試數據時有三種方案可以選擇。

    1.在程序中直接寫入測試數據

    在要輸入的數據項不多的情況下可以采用這種方式



    2.使用junitpack包中的InputDataUtil工具類

    (要使用這個工具,請在測試程序中加上import junitpack.InputDataUtil)

    這種方法要求把測試數據寫在一個XML文件中,XML的格式如下所示:

    <?xml version="1.0" encoding="UTF-8"?>

    <inputs>

    <input>

    <IrgCd>h0001</IrgCd>

    <IrgName></IrgName>

    <IrgKname></IrgKname>

    </input>

    <input>



    </input>



    </inputs>

    在這個XML文件中的根節點為inputs,根節點下可以有多個input節點。每個input節點代表一個case中需要的所有數據。

    使用這個工具類的操作步驟如下:

    1) 獲取XML的存放路徑。

    請把寫好的XML存放在測試類所在的目錄中,然后可以按如下方式取得XML的存放路徑:

    String xml = IrgSrhDelegateTest.class.getResource(".").toString() +"test.xml";



    2) 創建InputDataUtil的實例。

    InputDataUtil inputUtil = new InputDataUtil();



    3) 在InputDataUtil實例中設置接受數據的類名,InputDataUtil將此類與XML進行數據綁定。

    inputUtil.setClassName("jp.co.liondor.common.fz25IrgSrh. SeekIrgSrhOpt");



    4) 調用InputDataUtil.parse()方法,從XML中采集數據

    java.util.Vector vector = (java.util.Vector) inputUtil.parse(xml);



    5) 從Vector中取出被綁定類的實例

    for (int i = 0; i < vector.size(); i++) {

    SeekIrgSrhOpt opt = (SeekIrgSrhOpt) vector.get(i);



    }



    現在對InputDataUtil的工作原理進行說明。InputDataUtil會根據input節點下的子節點名來設置被綁定的類中對應的set方法,然后把XML中的數據設置到被綁定類中。比如上例XML中,input節點下有三個子節點:IrgCd、IrgName、IrgKname。那么在調用InputDataUtil.parse()方法時,InputDataUtil就會分別調用SeekIrgSrhOpt類的setIrgCd()、setIrgName()、setIrgKname()方法,把數據設置到SeekIrgSrhOpt的實例類中,并返回包含這些實例類的Vector對象。



    3.使用Digester

    (要使用這個工具,請在測試程序中加上import org.apache.commons.digester.Digester)

    Digester是Apache提供的一個工具類,上面的InputDataUtil也是從Digester類繼承的。當使用InputDataUtil暫時無法解決的時候,可以直接使用Digester。

    使用Digester的步驟如下:

    1) 獲取XML的存放路徑。

    獲取方式與使用InputDataUtil相同。



    2) 創建Digester的實例。

    Digester dig = new Digester();



    3) 設定與inputs節點綁定的類為Vector

    dig.addObjectCreate("inputs", "java.util.Vector");



    4) 設定與input節點綁定的類

    dig.addObjectCreate("inputs/input",

    " jp.co.liondor.common.fz25IrgSrh. SeekIrgSrhOpt ");

    5) 根據input節點下的子節點,依次設定相應的set方法

    dig.addCallMethod("inputs/input/ IrgCd ", "setIrgCd ", 1);

    dig.addCallParam("inputs/input/ IrgCd ", 0);



    6) 設定向Vector中加入數據的方法

    dig.addSetNext("inputs/input", "add");



    7) 調用Digester.parse()方法,從XML中采集數據

    java.util.Vector vector = (java.util.Vector) dig.parse(xml);



    8) 從Vector中取出被綁定類的實例

    for (int i = 0; i < vector.size(); i++) {

    SeekIrgSrhOpt opt = (SeekIrgSrhOpt) vector.get(i);



    }



    Digester的用法非常靈活,可以組織非常復雜的數據。

    關于Digester的詳細用法請參考http://jakarta.apache.org/commons/digester/。





    四、 對UI測試的原則

    對UI做單元測試必須做到不能牽涉到業務邏輯操作(比如數據庫操作、與Server的交互)。否則就是UI的設計不合理。對UI的單元測試應該非常單純,就只是測試界面的動作是否符合設計要求。



    五、 測試數據的覆蓋率

    測試時所準備的測試數據要覆蓋程序中所有可能出現的CASE。



    六、 測試記錄

    記錄測試的過程和結果,請使用Log4j工具。



    七、 測試粒度

    選擇測試粒度的原則:

    1) 被測試類中所有public、protected方法都要測到。

    2) 對于簡單的set和get方法沒有必要做測試。

    延伸閱讀

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


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(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>