【发布时间】:2014-03-29 02:52:13
【问题描述】:
我最近对测试非常感兴趣,我现在正努力学习以最好的方式进行单元测试。我将 NUnit 与 Rhino Mocks 一起使用。我也在 Stackoverflow 上阅读了很多内容,但未能找到我的问题的明确答案。
我想知道如果我有一个像下面这样的方法,我应该模拟 OfficeClass 依赖项并测试 GetAllOffices 还是只对依赖项使用存根并验证 GetAllOffices 方法已被调用并且我确实得到了办公室回到我对存根设置的预期?
public Offices GetAllOffices()
{
try
{
var offices = officeClass.GetAllOffices();
return offices;
}
}
如果 OfficeClass 只是另一个 POCO,或者如果说它是一个 web 服务,在 mocking vs stubbing 的情况下会有什么不同吗?
简短的长问题:在单元测试中何时模拟和何时存根?
【问题讨论】:
-
我之前一直在阅读那篇文章,但我仍然不确定何时使用其中一个而不是另一个,因此我认为在我自己的代码上下文中获得一些输入会有所帮助。
-
不确定您在帖子中遗漏了什么 - 一切都在那里。它列出了这两个概念之间的所有差异。
-
我仍然觉得我对“何时在单元测试中模拟和何时存根?”这个问题有了答案模拟以及何时我应该在单元测试的上下文中存根一个对象。
标签: c# unit-testing mocking stub