这是我要做的事的一个示例
var foo = CreateFoo(); // I don't have access to the internals of CreateFoo
fixture.Populate(foo); // foo should now have random property values
很显然,没有Fixture.Populate
方法。但是我应该如何解决这个问题呢?
谢谢!
答案 0 :(得分:0)
AutoFixture确实不提供API来填充现有对象的可写属性。但是,您可以使用以下代码段实现所需的行为:
var fixture = new Fixture();
var objectToFill = new TypeWithProperties();
new AutoPropertiesCommand().Execute(objectToFill, new SpecimenContext(fixture));
Assert.NotNull(objectToFill.Value);
如果经常需要,您可以在测试项目中为IFixture
创建扩展方法。