Autofixture:如何在不使用泛型方法的情况下创建类型实例

Jac*_*eja 2 autofixture

Autofixture 能够使用该Fixture.Create<T>()方法创建任何类型的实例。

但是我需要在运行时创建一个类型。默认情况下,非泛型Fixture.Create()需要一个“种子”,这不是我想要的。

如何在运行时创建给定类型的实例?

Jac*_*eja 6

通过查看我发现的 Autofixture 源代码,我可以这样做:

var fixture = new Fixture();
Type type = ... // My runtime type
var instance = fixture.Create(type, new SpecimenContext(fixture));
Run Code Online (Sandbox Code Playgroud)

不确定这是否是最好的方法,但它似乎有效。