• <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使用經驗(3) -- 轉自PMT雜志

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

    領測軟件測試網

    JUnit使用經驗3


    原作Andy Schneider Richard Dallaway 等
    編譯PMT 測試工作組


    經驗八、書寫測試時要考慮地區和國家設置
    比如某個測試要使用日期,下面的代碼就是創建日期對象的一種方法
    Date date = DateFormat.getInstance ().parse ("dd/mm/yyyy");
    但是如果運行上面測試代碼的機器采用不同的地區國家設置,那么就會有問題。因此我們最好用下面的另
    一種方法:
    Calendar cal = Calendar.getInstance ();
    Cal.set (yyyy, mm-1, dd);
    Date date = Calendar.getTime ();
    顯然,第二種方法能夠適應地區國家設置的變化。

    經驗九、利用Junit 的自動異常處理書寫簡潔的測試代碼
    很多Junit 的初學者經常會寫出類似下面的這些代碼
    public void exampleTest () {
    try {
    // do some test
    } catch (SomeApplicationException e) {
    fail ("Caught SomeApplicationException exception");
    }
    }
    事實上在Junit 中使用try-catch 來捕獲異常是沒有必要的,Junit 會自動捕獲異常。那些沒有被捕獲的異常就
    被當成錯誤處理。所以上面的代碼很冗余,完全可以寫成下面等效卻簡潔得多的代碼:
    public void exampleTest () throws SomeApplicationException {
    // do some test
    }
    更少的測試代碼也更容易讀懂更容易維護。

    經驗十、充分利用Junit 的assert/fail 方法
    Junit 有豐富而靈活的assert/fail 方法,如何用好這些方法也是大有講究的。比如下面的寫法就不大好
    assert (creds == 3);
    不如寫成
    assertEquals ("The number of credentials should be 3", 3, creds);
    第二種寫法不僅易于閱讀,而且在執行時如果fail 也可以向測試人員提供更多的信息。
    Junit 也有支持浮點數的assert方法,干凈利索如下例
    assertEquals ("some message", result, expected, delta);
    另外要一提的是:
    assertSame()用來測試兩個引用是否指向同一個對象
    assertEquals()用來測試兩個對象是否相等

    經驗十一、確保測試代碼與時間無關
    盡量避免可能過期的測試數據,這種數據應該可以手工或者自動的刷新。另外還有一個技巧就是在使用這些
    數據前更改系統的當前日期,數據操作結束后再恢復日期。當然,使用這一技巧要注意可能的副作用。

    經驗十二、使用文檔生成器做測試文檔
    我們當然可以使用文本編輯器來書寫單元測試的文檔,但是更好的方法是使用文檔生成器比如JavaDoc自
    動生成,這樣我們就不需擔心實現和文檔之間的同步問題。自動生成的文檔格式統一錯誤也少。

    延伸閱讀

    文章來源于領測軟件測試網 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>