0

我正在使用 NBehave 来写出我的故事,并使用 Rhino Mocks 来模拟被测系统的依赖关系。

但是,当从一种情况转移到另一种情况时,我在重置模拟依赖项中的预期行为时遇到问题。

我只想断言我的存储库上的 save 方法在两种情况下被调用:

dependancyRepository.AssertWasCalled( ear =>
    ear.Save(
        Arg<IDependancy>.Is.Equal(dependency)
    )
)

但是这在每个场景中都被调用并且在我的第二个场景中失败,因为 Rhino Mocks 期望它只被调用一次。我不想被迫使用明确的期望,但看起来我也会有。

有一些 NBehave 与 Rhino Mocks 的例子,但我不能有多个场景。还有一些 NBehave 和多个场景,但没有模拟。

还有其他人遇到这个问题吗?

干杯

4

2 回答 2

0

如果您不想断言 .Save(...) 在每个场景中都被调用,那么不要为每个场景设置该期望,只为您希望调用它的场景设置它。

如果这不能回答您的问题,请用更多信息澄清您的问题;目前尚不清楚您要做什么。

于 2009-07-21T01:34:49.193 回答
0

在相关场景的 Then 子句中进行 AssertWasCalled 调用,而不是在其他任何情况下。

于 2009-09-24T20:55:10.450 回答