posts - 262,  comments - 221,  trackbacks - 0

          1.關于單元測試:

          單元測試中的Test Case在設計時,有兩點要注意的:

          a. 測試的方法最好短小精悍,每個test case只測試一個關注的功能,假如一個方法的處理邏輯里面包含了對幾種可能情況的處理,那么測試案例最好分成幾個來測試,舉例如下
            
             方法: public void convertStringToDate(String string)
           
             在實際應用過程中,傳入參數string的值可能有下面幾種情況:
            
             1). Null
             2). 空格
             3). 非空但格式錯誤
             4). 非空且格式正確,但值錯誤(如:2008-02-31 23:59:59)
             5). 非空且格式、值均正確

             那么如果我們在同一個測試方法中: public void testConvertStringToDate()測試所有的可能情況,會有下面兩個問題:

             1). 代碼量增多
             2). 不利于修改,假如由于業務方法中某個處理邏輯改變了,此時重新測試時必須測試所有其它的方法
             3). 可能造成測試案例的順序依賴,比如其中某個方法會拋出異常,之后的測試案例可能不會被執行到

          如果我們按照上面可能出現的情況來分的話,那么就有五個測試案例,從數量上看是多了,但是后果就是每個方法都非常短小(不超過6行),簡單明了,一目了然,即便測試案   例錯了,我也能馬上看出來。其次一個測試案例的修改不會影響到其它的測試案例。

          b.測試方法是否拋出異常,可以參考下面的代碼結構:
           
            try{
                調用被測試代碼 // 此處的代碼必須是明確會拋出異常的,因為這是我們要測試的目的
                fail("Error: Must throw an exception here.");
            } catch(Exception e){
                assertTrue(true);
            }


          2.關于使用DateFormat及其子類進行字符串和日期轉換的注意點:

          使用DateFormat將字符串轉換成Date對象時,必須注意在轉換前,先調用:setLinient(false);否則的話即使實際的日期數值有問題,例如2008-04-32 23:59:59,只要格式正確,也能夠被轉換成功,但這在實際的應用中是沒有意義的。



          -------------------------------------------------------------
          生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。
          posted on 2008-04-28 00:37 Paul Lin 閱讀(216) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2008年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          常用鏈接

          留言簿(21)

          隨筆分類

          隨筆檔案

          BlogJava熱點博客

          好友博客

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 伊宁县| 天祝| 陇西县| 青岛市| 阜新市| 汽车| 荔浦县| 高碑店市| 凤凰县| 香河县| 通化市| 鹿邑县| 巴林左旗| 莲花县| 通城县| 峨眉山市| 渝中区| 香格里拉县| 和硕县| 蓬安县| 黄浦区| 邢台市| 长寿区| 光泽县| 金川县| 漠河县| 常宁市| 麻阳| 湘阴县| 侯马市| 荣成市| 平凉市| 绥滨县| 阆中市| 香河县| 青冈县| 建德市| 伊金霍洛旗| 灌云县| 连江县| 赤峰市|