Joh*_*uru 7 c# asp.net-mvc unit-testing code-first
我只是想知道是否有一种方法可以在不使用Repository模式的情况下在MVC中对我的一些控制器Action进行单元测试.我已经开发了一个ASP.NET MVC站点,但是在初始阶段没有进行单元测试.现在我想向我的导师演示一些单元测试,可能是我的控制器中的两个或更多动作.我的大多数操作逻辑从数据库获取数据,一个控制器从不同的表中获取数据,即一个控制器中的操作从不同的表读取.我认为可以使用Generic Repository模式进行测试.作为初学者,我发现我只能对不是来自数据库的代码进行单元测试,但遗憾的是,我的控制器中的大部分代码都来自数据库.我正在使用Visual Studio中的默认测试工具和我的数据库的EF代码第一种方法.
例如,我想单独测试以下操作,而不必单元测试同一控制器中的其他操作.
public ActionResult Index()
{
var model = _db.PhotoGallery;
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
这仅用于演示目的.
根据定义,单元测试应该只影响它调用的方法.如果您可以找到一种模拟_db对象的方法,这样您实际上不会导致数据库往返,那么您可以对依赖它的方法进行单元测试.否则,没有.
您的_db字段类型是接口吗?它是通过注射提供的吗?如果是这样,您可能会对此方法进行单元测试.
| 归档时间: |
|
| 查看次数: |
1883 次 |
| 最近记录: |