java - 單元測試對dao層的測試有什麼好的實踐方案?
阿神
阿神 2017-04-18 10:56:06
0
1
546

比如對某個新增的dao進行單元測試,那豈不是要真的往數據庫中插入一條數據?每次單元測試都新增一條數據?

還有,查詢操作,返回一個List的對象集合,怎麼判斷數據是準確的呢?

對於單元測試,大家有什麼好的實踐方案嗎?

阿神
阿神

闭关修行中......

全部回覆(1)
Ty80

單元測試中使用資料庫,可以考慮兩種方案:

  1. 搭建一個長期使用的測試資料庫,作為單元測試,測試開始前或完成後清空無關數據,即可確保測試的可重複性。缺點是多個人同時執行單元測試時,可能會失敗。

  2. 使用記憶體資料庫(如 H2)。優點是無需清空無關數據,缺點是要將資料庫初始化過程(如建表語句)納入單元測試中。如果初始化很複雜,也會影響單元測試的效率。

至於如何驗證查詢結果,基本上是根據業務邏輯來。例如我單元測試運行到這裡,查詢這個一定會回傳 27 筆記錄,那就驗證回傳記錄數是否為 27。其他情況可以自己設計。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板