簡體   English   中英

數據測試層的單元測試

[英]Unit Testing the Data Access Layer

我想測試數據層,該如何處理? 我正在使用NUnit進行業務對象測試。 我是否必須使用模擬對象(以前從未使用過)?

如果有人能以正確的方向指導我,我將不勝感激。

您將必須這樣做:

  1. 將業務層(或控制器層)與數據訪問分開。 確保您的數據訪問層是完全干凈的。 您需要模擬才能做到這一點。
  2. 如果您使用的是NHibernate之類的ORM,請將數據庫供應商更改為較輕的內容(例如sqlite ,在配置中將其設置為內存中),以便可以針對內存中數據庫執行測試。 這樣,您不必擔心諸如資源清理之類的麻煩事情。 當然,您需要在測試之前預先填充數據。

這是關於單元測試DAL 的答案 ,您可能會發現它很有用。

使用模擬對象取決於您的單元測試。 如果您不想初始化許多對象來測試單個對象,則可以使用模擬來模擬其他對象的行為。

為了測試DAL對象,您必須在每次運行測試時重置DB狀態。 由於在數據庫上運行測試將創建許多記錄,這些記錄可能會更改數據庫的狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM