我們已經在我們的代碼庫的幾個地方,我們做一些類似如下的內容:嘲諷System.Data.SqlClient.X類
DataTable dt = new DataTable();
using (DatabaseContext context = DatabaseContext.GetContext(false)) {
IDbCommand cmd = context.CreateCommand("SELECT * FROM X");
SqlDataAdapter dataAdapter = new SqlDataAdapter((SqlCommand)cmd);
dataAdapter.Fill(dt);
}
return dt;
我們如何使用模擬測試框架,像起訂量,除去我們測試依賴於數據庫?我想模擬返回的DataTable。
說明:我們有計劃改變這個代碼,但目前不能。它可能根本就是嘲弄嗎?
如果您想使用像Moq或Rhino這樣的免費模擬框架,您將無法使用此代碼模擬數據表。但是,您可以考慮使用Typemock或JustMock來實現(但這些是昂貴的選項) – Raghu