assertEquals("employee_info_a", result);
}
//測試多個相連字母大寫時的情況
@Test public void wordFormat4DBTogether(){
String target = "employeeAInfo";
String result = WordDealUtil.wordFormat4DB(target);
assertEquals("employee_a_info", result);
}
}
再次運行測試。很遺憾,JUnit 運行界面提示我們有兩個測試情況未通過測試(圖4)——當首字母大寫時得到的處理結果與預期的有偏差,造成測試失敗(failure);而當測試對 null 的處理結果時,則直接拋出了異!獪y試錯誤(error)。顯然,被測試代碼中并沒有對首字母大寫和 null 這兩種特殊情況進行處理,修改如下:
//修改后的方法wordFormat4DB
/**
* 將Java對象名稱(每個單詞的頭字母大寫)按照
* 數據庫命名的習慣進行格式化
* 格式化后的數據為小寫字母,并且使用下劃線分割命名單詞
* 如果參數name為null,則返回null
*
* 例如:employeeInfo 經過格式化之后變為 employee_info
*
* @param name Java對象名稱
*/
public static String wordFormat4DB(String name){
if(name == null){
return null;
文章來源于領測軟件測試網 http://www.kjueaiud.com/