我首先要说的是我非常喜欢单元测试。我已经使用它几年了。但到目前为止,我的使用仅限于确保正确执行工程计算,正确格式化字符串等。基本上,测试我在类库中的工作以便在其他项目中使用。
现在,我想扩展并将单元测试应用于我在ASP.NET Web API上的工作。此时我已经编写了我的控制器并与Ninject一起工作。虽然我正在使用Ninject,但我仍然不能100%确定为什么我这样做而且还没有看到它的好处。
关于我的问题,我的Web API控制器进行单元测试的后续步骤是什么?接下来我该怎么办?何时能获得使用Ninject的好处?
答案 0 :(得分:2)
接下来,您可以创建控制器可以返回到您的视图的虚假数据(或模拟)。这将允许您进行前端开发,而无需完成后端实现。
使用Ninject的好处是您可以创建模拟对象以进行测试。通过注入接口而不是具体实现,您可以轻松地在真实对象和模拟对象之间切换。要做到这一点,您只需更改Ninject绑定中应注入的那个。使用类似Rhino Mock和Ninject的东西,您可以编写和测试代码(控制器,视图等),而无需完全实现所有功能。当您准备实现模拟的功能时,您不必重写代码以适应更改,只需更新绑定即可。现在,真实数据将显示在您的页面上,而不是您之前创建的模拟数据。