文章詳情頁
java - 單元測試對dao層的測試有什么好的實踐方案?
瀏覽:181日期:2023-12-23 18:47:53
問題描述
比如對某個新增的dao進行單元測試,那豈不是要真的往數據庫中插入一條數據?每次單元測試都新增一條數據?
還有,查詢操作,返回一個List的對象集合,怎么判斷數據是準確的呢?
對于單元測試,大家有什么好的實踐方案嗎?
問題解答
回答1:單元測試中使用數據庫,可以考慮兩種方案:
搭建一個長期使用的測試數據庫,作為單元測試,測試開始前或完成后清空無關數據,即可保證測試的可重復性。缺點是多個人同時運行單元測試時,可能會失敗。
使用內存數據庫(如 H2)。優點是無需清空無關數據,缺點是要將數據庫初始化過程(如建表語句)納入單元測試中。如果初始化很復雜,也會影響單元測試的效率。
至于如何驗證查詢結果,基本上根據業務邏輯來。比如我單元測試運行到這里,查詢這個一定會返回 27 條記錄,那就驗證返回記錄數是否為 27。其他情況可以自己設計。
標簽:
java
相關文章:
1. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變2. html - vue項目中用到了elementUI問題3. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?4. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。5. javascript - 求解答:實例對象調用constructor,此時constructor內的this的指向?6. javascript - 有什么比較好的網頁版shell前端組件?7. java - 如何寫一個intellij-idea插件,實現編譯時修改源代碼的目的8. javascript - [js]為什么畫布里不出現圖片呢?在線等9. java 中Long 類型如何轉換成Double?10. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內style=" "的方法嗎?
排行榜
