如何使用Moq能够使用模拟对象的方法操作?

时间:2016-10-18 13:20:39

标签: c# unit-testing moq

我在test中的构造函数中有一个实例化:

public class Car{

public string Method()
{
 return "test";
}
}

private readonly ICar _classUnderTest;
    public CarTests()
    {
        var collaboratingClass = new CollaboratingClass();
        _classUnderTest = new Car(collaboratingClass );
    }

如果我使用moq并传递这样的模拟实例:

    var collaboratingClass = new Mock<ICollaboratingClass>();
    _classUnderTest = new Car(collaboratingClass .Object);

...然后我无法调用方法。来自此模拟实例的方法未被调用,因此我无法将其用于计算。如何使我的模拟对象能够访问方法并使用模拟对象进行操作?

正如你所看到的,我不想在这里有具体的依赖。

1 个答案:

答案 0 :(得分:0)

你可以伪造一个返回你的模拟类方法。如果您需要依赖项中的行为,则它不再是单元测试

相关问题