我正在研究将mocking用于单元测试,并将其添加到现有代码中。为此,我使用HippoMocks。这涉及到另一个类调用我的mock上的一些方法(它们都是虚拟的)。我希望避免过度指定所有这些,但是每当其他类调用我没有指定的mock上的函数时,HippoMocks都会抛出NotImplementedException。
下面的代码暴露了我的问题。
void test()
{
class SimpleClassToMock
{
public:
virtual void memberFunction1() {}
virtual void memberFunction2() {}
};
MockRepository mocks;
// true or false here makes no difference.
mocks.autoExpect = true;
SimpleClassToMock* m = mocks.Mock<SimpleClassToMock>();
// I care about this function getting called.
mocks.ExpectCall(m, SimpleClassToMock::memberFunction1);
m->memberFunction1();
// HippoMocks fails on the next line by throwing NotImplementedException.
m->memberFunction2();
}有没有办法告诉HippoMocks不要在这里失败?我只想为特定的测试指定我所关心的东西的期望,而不是调用的每一个单独的东西。
PS:对于那些有嘲笑经验的人来说,我是不是想错了?在这样的情况下过度指定测试不是问题/“你想要什么”?
https://stackoverflow.com/questions/41547660
复制相似问题