人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

JUnit運用經驗(3) -- 轉自PMT雜志

JUnit運用經驗(3) -- 轉自PMT雜志

更新時間:2022-08-28 文章作者:未知 信息來源:網絡 閱讀次數:

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自
動生成,這樣我們就不需擔心實現和文檔之間的同步問題。自動生成的文檔格式統一錯誤也少。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 榆树市| 济阳县| 嘉义县| 青岛市| 祁东县| 南华县| 姚安县| 城步| 隆德县| 济宁市| 淄博市| 上饶市| 恭城| 崇左市| 辰溪县| 江北区| 兴宁市| 青海省| 禹州市| 榕江县| 松阳县| 彰武县| 敦化市| 长春市| 秭归县| 奈曼旗| 玉龙| 广昌县| 开阳县| 柏乡县| 赤峰市| 石狮市| 台东市| 永春县| 科技| 玉田县| 军事| 永吉县| 临武县| 凌云县| 广德县|