我已經創建了SqlCommand的擴展方法,它允許在執行命令之前一些額外的工作:方法測試的擴展方法的SqlCommand
public static SqlDataReader ExecuteMyReader(this SqlCommand sqlCommand)
{
// Some calculations here
return sqlCommand.ExecuteReader();
}
我的問題是什麼是單元測試的最好方式這擴展方法?
我應該直接對數據庫進行測試嗎?
或者我應該嘗試創建一個模擬對象嗎?如果是這種情況,我嘗試通過Moq來做這件事,但由於SqlCommand是一個封閉的類,我似乎無法嘲笑它。
這也是一個不錯的選擇。 – Finglas 2010-04-19 13:37:25
我可以把計算拉出來,所以它是在它自己的方法中,但是我寧願這個方法保持私有,是否有測試私有方法的方法? – lancscoder 2010-04-19 13:40:46
@Simon - 查看http://stackoverflow.com/questions/51950/how-do-i-allow-assembly-unit-testing-one-to-access-internal-properties-of-anoth – Finglas 2010-04-19 13:44:13