我正在使用RhinoMocks在viewModel上测试Add()方法。我有一个名为AddTest()的测试,它测试Add()方法中的所有内容,包括
1)一个项目添加了viewModel项目列表, 2)该项目已经过验证 3)itemsList pagedCollection视图已移至正确的页面
问题是这需要大约5个AssertWasCalled方法,如果其中一个失败,屏幕上会显示一般错误消息。
我真正想要的是说AssertWasCalled(....,“Item此时应该有效”),所以我知道失败了。
我知道nUNit中存在此功能。我很惊讶我无法使用rhinoMocks显示这样的自定义错误...
或者是我应该使用5个单元测试方法来测试此功能的问题?即使通过我只测试一个“单位”(例如Add()方法)的代码?
答案 0 :(得分:1)
你最后敲击了头部:你应该使用5种单位测试方法。
即使您只测试一个“方法”,该方法也会执行5种不同的操作,并且它们都需要单独测试。如果你的Add方法需要做5件事:
step 1
step 2
step 3
step 4
step 5
然后通过5个不同的单元测试,您可以在单元测试1-3工作之前处理步骤4和5的单元测试(也许其他人正在处理1-3的代码,而您正在进行4和5 )。你在等他们完成吗?通过这种方法,您可以在单元测试中定位特定功能。
请记住:“单位”不等于“方法”。