【发布时间】:2014-09-06 12:56:57
【问题描述】:
我正在使用带 Moq 的 Autofixture 将 Moq 注入我的 sut。
我有以下带有构造函数的类:
public class Dummy{
public Dummy(){
}
public Dummy(IDummyData data){
}
}
我已经在我的 xUnit 测试中使用 AutoMoqCustomization 和 GreedyConstructorQuery 配置了 Fixture,如下所示。
[Fact]
public void ValidLoginShouldReturnAToken()
{
var fixture = new Fixture()
.Customize(new ConstructorCustomization(typeof(Dummy), new GreedyConstructorQuery()))
.Customize(new AutoMoqCustomization());
Dummy sut = fixture.Build<Dummy>().Create();
}
现在的问题是 Dummy 的实例是使用默认构造函数创建的。我希望实例由具有最多参数的构造函数创建,并且 AutoMoq 将为注入到我的 sut 中的接口 IDummyData 创建一个 Mock。
那么我的设置不正确吗?我的期望错了吗?我需要先创建一个 Mock 并在我的 Fixture 上注册它吗?
【问题讨论】:
标签: c# moq autofixture