【发布时间】:2013-03-11 14:20:03
【问题描述】:
假设我有一个像下面这样的课程。
我不确定如何针对它编写单元/集成测试。需要重构吗?
会不会只是添加一个 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();
}
}
}
【问题讨论】:
-
我想向您指出几分钟前发布的另一个问题:stackoverflow.com/questions/15340569/…
-
您的提议对我来说似乎也可以,作为存储库的集成测试。添加,然后删除,然后检查它是否仍在数据库中。但是,我更喜欢围绕用例而不是类进行集成测试。
标签: c# .net unit-testing integration-testing