c# - MsTest 生成的测试是实际的单元测试吗?

标签 c# unit-testing visual-studio-2010 mstest

Visual Studio 2010 为我生成了一堆看起来很方便的单元测试,但我怀疑它们是否是实际的单元测试。例如,它生成了一个名为 SaveTest 的测试,它执行以下代码:

User user = new User();  //I have to create a user
user.Save(); //This saves the user to the database.
//Assertions here....

我上面遇到的问题是,根据我的阅读,单元测试应该在隔离中测试事物,因此通过测试保存到数据库,这不是单元测试或者我错了,MsTest 弄错了吗?作为旁注,用户是由 dbml 生成的,并在我的 DataContext 上保存调用 SubmitChanges。

最佳答案

如果您已经完成必要的工作来隔离依赖项,那么自动生成的测试只是单元测试,这样带有副作用的调用可以路由到适当的模拟或 stub 依赖项以感知所需的效果。这些工具不会完成构建代码以支持单元测试的工作;他们所能做的就是创建对各种公共(public)接入点的调用。您还必须为每个测试安排依赖状态并断言您希望检查的条件。

关于c# - MsTest 生成的测试是实际的单元测试吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3736716/

相关文章:

node.js - 如何用 Jest 设置媒体查询?

javascript - Jest 模拟功能未按预期工作

.net - 从网络共享运行(本地)Azure 辅助角色

c# - 为什么尝试在WPF/C#中注册所有事件时出现构建错误?

c# - 数据表 c# 中的 dataRow 上下文错误

c# - "PDB format is not supported"带有 .NET 可移植调试信息

c# - 如何使用反射将匿名操作绑定(bind)为新的事件处理程序

javascript - Jasmine spy : How to make it work when the spyed function reference is passed?

asp.net - Visual Studio 2010,TFS 不断检查解决方案文件更改 'VWDPort'

c++ - VS2010 中的 M_PI : working in Debug conf but not in Release