bfi*_*her 2 c# unit-testing linq-to-sql
我如何编写单元测试来测试方法将记录添加到数据库的能力?目前,我有以下内容:
[TestMethod]
public void AddUserTest()
{
Boolean expected = true;
Boolean result = UserManager.AddUser(test);
Assert.AreEqual(expected, result);
}
Run Code Online (Sandbox Code Playgroud)
如果我只测试将记录添加到数据库的能力(不必担心记录是否已存在),这适用于此.但是,我不确定如何编写测试,如果由于预先存在的记录而提交失败,它仍然会通过.
如果它有所作为,我正在使用LINQ to SQL进行数据库事务.根据我在MSDN文档中收集的内容,DataContext.SubmitChanges()没有返回值,所以我也不确定如何确定特定事务是否成功.
我将继续查看文档.Perhaps DataContext.SubmitChanges()在记录冲突或其他故障时抛出异常,我可以在单元测试中捕获?
只要存在外部代理(例如文件系统,数据库等),它就是一个集成测试.
你的AddUserTest上面有缺陷:该AddUser方法可以返回true而不添加任何东西或不正确添加它仍然返回true!在这种情况下,您没有准确测试任何东西.
编写一个集成测试,将数据添加到数据库,然后检索它并比较两组值是否相等.
| 归档时间: |
|
| 查看次数: |
3036 次 |
| 最近记录: |