亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
單元測試利器JUnit
作者:網絡轉載 發布時間:[ 2013/3/29 14:59:08 ] 推薦標簽:

Java代碼 復制代碼

    package com.ai92.cooljunit;  
     
    import java.util.regex.Matcher;  
    import java.util.regex.Pattern;  
     
    /** 
     * 對名稱、地址等字符串格式的內容進行格式檢查 
     * 或者格式化的工具類 
     *  
     * @author Ai92 
     */ 
    public class WordDealUtil {  
     
        /** 
         * 將Java對象名稱(每個單詞的頭字母大寫)按照 
         * 數據庫命名的習慣進行格式化 
         * 格式化后的數據為小寫字母,并且使用下劃線分割命名單詞 
         *  
         * 例如:employeeInfo 經過格式化之后變為 employee_info 
         *  
         * @param name  Java對象名稱 
         */ 
        public static String wordFormat4DB(String name){  
            Pattern p = Pattern.compile("[A-Z]");  
            Matcher m = p.matcher(name);  
            StringBuffer sb = new StringBuffer();  
              
            while(m.find()){  
                m.appendReplacement(sb, "_"+m.group());  
            }  
            return m.appendTail(sb).toString().toLowerCase();  
        }  
    } 

     它是否能按照預期的效果執行呢?嘗試為它編寫 JUnit 單元測試代碼如下:

Java代碼 復制代碼

    package com.ai92.cooljunit;  
     
    import static org.junit.Assert.assertEquals;  
    import org.junit.Test;  
     
    public class TestWordDealUtil {  
        //測試wordFormat4DB正常運行的情況  
        @Test public void wordFormat4DBNormal(){  
            String target = "employeeInfo";  
            String result = WordDealUtil.wordFormat4DB(target);  
              
            assertEquals("employee_info", result);  
        }  
    } 

     很普通的一個類嘛!測試類 TestWordDealUtil 之所以使用“Test”開頭,完全是為了更好的區分測試類與被測試類。測試方法 wordFormat4DBNormal 調用執行被測試方法 WordDealUtil.wordFormat4DB,以判斷運行結果是否達到設計預期的效果。需要注意的是,測試方法 wordFormat4DBNormal 需要按照一定的規范書寫:

    測試方法必須使用注解 org.junit.Test 修飾。
測試方法必須使用 public void 修飾,而且不能帶有任何參數。
    測試方法中要處理的字符串為“employeeInfo”,按照設計目的,處理后的結果應該為“employee_info”。assertEquals 是由 JUnit 提供的一系列判斷測試結果是否正確的靜態斷言方法(位于類 org.junit.Assert 中)之一,我們使用它將執行結果 result 和預期值“employee_info”進行比較,來判斷測試是否成功。

    看看運行結果如何。在測試類上點擊右鍵,在彈出菜單中選擇 Run As JUnit Test。運行結果如下圖所示:

圖3 JUnit 運行成功界面

    綠色的進度條提示我們,測試運行通過了。但現在宣布代碼通過了單元測試還為時過早。記住:您的單元測試代碼不是用來證明您是對的,而是為了證明您沒有錯。因此單元測試的范圍要全面,比如對邊界值、正常值、錯誤值得測試;對代碼可能出現的問題要全面預測,而這也正是需求分析、詳細設計環節中要考慮的。顯然,我們的測試才剛剛開始,繼續補充一些對特殊情況的測試:

Java代碼 復制代碼

    public class TestWordDealUtil {  
        ……  
        //測試 null 時的處理情況  
        @Test public void wordFormat4DBNull(){  
            String target = null;  
            String result = WordDealUtil.wordFormat4DB(target);  
              
            assertNull(result);  
        }  
          
        //測試空字符串的處理情況  
        @Test public void wordFormat4DBEmpty(){  
            String target = "";  
            String result = WordDealUtil.wordFormat4DB(target);  
              
            assertEquals("", result);  
        }  
     
        //測試當首字母大寫時的情況  
        @Test public void wordFormat4DBegin(){  
            String target = "EmployeeInfo";  
            String result = WordDealUtil.wordFormat4DB(target);  
              
            assertEquals("employee_info", result);  
        }  
          
        //測試當尾字母為大寫時的情況  
        @Test public void wordFormat4DBEnd(){  
            String target = "employeeInfoA";  
            String result = WordDealUtil.wordFormat4DB(target);  
              
            assertEquals("employee_info_a", result);  
        }  
          
        //測試多個相連字母大寫時的情況  
        @Test public void wordFormat4DBTogether(){  
            String target = "employeeAInfo";  
            String result = WordDealUtil.wordFormat4DB(target);  
              
            assertEquals("employee_a_info", result);  
        }  
    } 

上一頁123456下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 日韩一区二区三区四区不卡 | 男女视频在线 | 黄色录像日本 | 一区二区不卡在线 | 欧美精品成人一区二区在线观看 | 97国产免费全部免费观看 | 最近中文字幕在线 | 成人国产精品视频频 | 老司机亚洲精品 | 日本欧美国产精品 | 国产精品久久久久影院色老大 | 极品国产一区二区三区 | 中文字幕35页 | 国产韩国精品一区二区三区久久 | 国产精品免费视频网站 | 蜜桃视频成a人v在线 | 夜色资源站www国产在线资源 | 亚洲国产精品成人久久 | 国产最新精品2020好看的 | 欧美成人私人视频88在线观看 | 国产精品久久久久久福利漫画 | 老司机免费看 | 影音先锋在线亚洲精品推荐 | 精品久久久久久亚洲 | 国产毛片毛片精品天天看 | 最近中文字幕免费在线看 | 成年男人永久免费看片 | 高清一级毛片免免费看 | 成年人在线播放视频 | 日本高清中文字幕一区二区三区a | 欧美午夜视频在线观看 | 国产不卡精品一区二区三区 | 中文字幕日韩有码 | 国产 欧美 日韩在线 | sea8国产精品视频 | 色男人的天堂久久综合 | 一个人看的www视频在线 | 欧美日韩视频免费播放 | 国产香港日本三级在线观看 | 国产精品一在线观看 | 两性色午夜视频自由成熟的性 |