假设我有这项服务:
public class Service
{
...
public Service(IFactory factory)
{
...
}
public void Method()
{
IInsatnce instance1 = factory.CreateInstance(params1);
IInstance instance2 = factory.CreateInstance(params2);
instance1.CallMethod1();
instance2.CallMethod2();
}
}
我想在测试中验证这些创建的实例上的方法是否被调用。据我所知,我必须创建将返回模拟实例的工厂模拟。但是,我是否应该保留将在其中创建的所有模拟实例的引用Method()
并使用它们来验证方法调用?这是正确的方法吗?