【发布时间】:2014-06-10 20:49:46
【问题描述】:
我想在 Visual Studio 中使用单元测试来测试我的 C# 代码。 该代码与 MySQL 数据库交互。
我要测试的示例
用户打开我的应用程序并将通过 Web 服务保存在数据库中。现在我想知道在新用户到来之前表Users 是否还有一行。但是如果我在 webservice 中测试该方法,它将在数据库中创建一条记录,测试数据将在数据库中。而且我不希望我的数据库中有测试数据。
这个问题有解决办法吗?
【问题讨论】:
-
如果它与 Web 服务和数据库交互,那么它不是单元测试。单元测试单独测试代码。
-
使用内存数据库进行此类集成测试
-
你应该用一个假人替换你的数据库并断言它,因为约翰写了一个 UnitTest 根本不应该与数据库交互。
标签: c# database unit-testing