【发布时间】:2014-10-02 10:45:57
【问题描述】:
我想多次模拟同一个界面。下面的代码演示了我认为阻止我的原因。
我已经阅读并找不到解决方案。似乎没有办法区分 _mockOne 和 _mockTwo。
public interface IDoSomething
{
}
[TestFixture]
class RhinoTest
{
private IDoSomething _mockOne;
private IDoSomething _mockTwo;
[SetUp]
public void SetUp()
{
_mockOne = MockRepository.GenerateMock<IDoSomething>();
_mockTwo = MockRepository.GenerateMock<IDoSomething>();
var somethings = new Dictionary<string, IDoSomething>
{
{"one", _mockOne},
{"two", _mockTwo}
};
//Pass this dictionary to a constructor for use in tests
}
}
如果我调试代码,我发现这两个对象具有相同的标识符。
我意识到这可能更多地与糟糕的抽象有关,但如果有办法解决这个问题,这将对我们项目的当前位置非常有帮助。
非常感谢。
【问题讨论】:
-
仅供参考我目前正在调查这个答案是否可以解决我的问题stackoverflow.com/a/3882743/966609
-
以上似乎没有帮助
标签: c# testing mocking rhino-mocks