我对如何将一个类与另一个类的嵌套集合进行水合感到有点困惑。
我收到错误:
AutoFixture 无法从 System.Collections.Generic.IList`1[typename...] 创建实例
我尝试过使用Fixture.Register()
注册用于填充内部类的类型。
我可以用一个示例来显示
- 主要班级
- 另一个类的嵌套集合 (IList/IEnumerable)。
我也注意到了Register()
被标记为已过时,但没有相关文档Inject()
CodePlex 上的方法,所以我很困惑这应该如何工作。
AutoFixture 不假设如何实例化接口实例,但您可以很容易实现您想要的行为 http://blog.ploeh.dk/2011/02/07/CreatingSpecificPopulatedListsWithAutoFixture.aspx- 例如对于整数:
fixture.Register(() => fixture.CreateMany<int>());
在即将推出的 AutoFixture 2.1 中,您还可以为各种集合启用约定 http://blog.ploeh.dk/2011/02/08/CreatingGeneralPopulatedListsWithAutoFixture.aspx通过单个方法调用:
var fixture = new Fixture().Customize(new MultipleCustomization());
关于 Register 方法的弃用,请注意,这只是 Register 方法的一个重载被标记为过时。 Inject 方法是直接替换方法 - 它具有相同的签名和用法,只是名称不同。所有其他寄存器重载均未弃用,应按“记录”使用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)