可以說我有一個像下面這樣的類。如何寫數據庫集成測試
我不知道如何編寫一個單元/集成測試。它需要重構嗎?
它只是添加一個Add/Find方法(它實際上會有),在測試中調用Add,然後調用Delete,然後調用Find?
public class Repository
{
public void DeleteProduct(int id)
{
var connstring = ""; //Get from web.config
using(SqlConnection conn = new SqlConnection(connstring))
{
conn.Open();
SqlCommand command = new SqlCommand("DELETE FROM PRODUCTS WHERE ID = @ID")
command.Paramaters.Add("@ID", id)
command.ExecuteNonQuery();
}
}
}
我想指出你剛發佈的另一個問題分鐘前:http://stackoverflow.com/questions/15340569/tdd-100-coverage-for-methods-that-wrap-sql/15340652?noredirect=1 #comment21666041_15340652 – 2013-03-11 14:24:05
作爲存儲庫的集成測試,您對我的建議似乎也可以。添加,然後刪除,然後檢查它是否仍然在數據庫中。但是,我更喜歡圍繞用例進行集成測試,而不是類。 – 2013-03-11 14:26:30