1

我通过调用函数将数据存储到数据库中,StoreData. 在设计器代码中,aSqlConnection打开,SqlCommands 运行,然后SqlConnection关闭。成功StoreData运行后,数据存储在数据库中。

我想StoreData通过断言我为集成测试选择的值(StoreData运行前,即id = 0, time = "13:00")等于在数据库中找到的值(StoreData运行后,即idcolumn =0time_stampcolumn = "13:00")来运行集成测试。

我考虑过使用 LINQ。这是一个好方法,还是有更好的方法来做到这一点?

4

1 回答 1

1

从技术上讲,这是一个集成测试,进行一个将从数据库中读取数据并确保其看起来正确的测试是完全有效的。

但是,如果你想让它成为一个单元测试,你应该做的是将支持机制模拟为某种内存结构,然后你的StoreData方法将插入这个结构而不是调用数据库。通常,这将意味着为某种工厂机制创建某种工厂机制SqlConnectionSqlCommand然后重载方法以确保查询针对您的内存结构。

于 2012-04-24T17:38:14.873 回答