我是單元測試新手。但是,如何單元測試用實體框架編寫的DAL,因此我可以確保我的DAL代碼正常工作,但沒有實際觸及數據庫?請有人提供儘可能詳細的信息。如何正確單元測試我的DAL?
11
A
回答
15
如果你想測試你的數據訪問層是否工作正確,你真的需要在某個時候對數據庫進行測試,否則你實際上並沒有測試它的效果。
4
當我單元測試我的DAL時,我使用事務並在單元測試結束時回滾,所以db是乾淨的。
4
單元測試DAL是開發中非常常見的頭痛問題。大多數情況下,我建議你跳過它。
現在大多數ORM都提供某種查詢語言,無論是LINQ或HQL還是其他一些風格。因爲一個適當的單元測試要求你實際上沒有碰到數據庫,所以你必須嘲笑ORM,這樣做是你能想到的最大的麻煩。這不值得,國際海事組織。最終,您只會最終測試您在代碼中編寫了適當的查詢;你根本沒有迴歸價值,並且可以通過檢查代碼來更好地服務你的目的。
我不是說你不應該測試你對DAL的使用,只是不要嘗試單元測試。您仍應該爲您的程序/系統提供一套集成和用戶驗收測試;讓那些處理測試你的數據訪問。
相關問題
- 1. 單元測試DAL - 停止運行單元測試時連接
- 2. EF,DAL門面和單元測試
- 3. 單元測試DAL - 請批評
- 4. 單元測試101如何正確測試模型?
- 5. Android單元測試:我如何測試?
- 6. 你如何測試DAL?
- 7. Android單元測試的正確方法
- 8. 如何將DataReader模擬爲單元測試DAL
- 9. 如何確保counter_cache在rails單元測試中正確更新?
- 10. 正確單元測試技術
- 11. 單元測試ActionFilter - 正確設置ActionExecutingContext
- 12. 測試NG-IF的div與單元正確顯示測試
- 13. 如何在reactjs單元測試中聲明正確的值?
- 14. 如何選擇單元測試正確的調度
- 15. 如何單元測試複雜TypeToken的正確配置?
- 16. 如何正確的單元測試領域遷移
- 17. 如何在JavaScript中進行單元測試? (正確的方式)
- 18. RavenDB中的單元測試如何正確執行
- 19. 爲什麼不能正確運行我的單元測試?
- 20. 如何從我的單元測試
- 21. 我如何正確測試Laravel事件?
- 22. 如何測試我正確調用pickle.dump()?
- 23. 如何正確單元測試字符串與參數
- 24. 如何正確單元測試RestEasy響應?
- 25. 如何正確地單元測試域服務?
- 26. 如何爲外鍵正確插入單元測試
- 27. 如何在單元測試中正確使用python模擬setUp
- 28. 如何正確進行單元測試清理套接字
- 29. 如何正確地寫角度單元測試對路由
- 30. 如何正確單元測試PUT方法
+1如果一個測試數據庫不存在,真的應該創建一個(似乎OP是關心數據更新)。 – 2008-11-21 19:24:18
模擬的作用是什麼?有人可以解釋一下測試數據庫的作用嗎? – 2008-11-21 20:27:02