5

我有一个类型,想用测试数据创建它的一个实例。

我知道像NBuilderAutoFixture<T>这样的框架可以创建在设计时( )已知的类型的实例。这些框架是否能够基于仅在运行时才知道的类型(Type)创建实例?

最后我想做类似的事情:

var value = Builder.Create(type);
var constant = Expression.Constant(value, type);
4

1 回答 1

6

AutoFixture 确实支持这一点。但是,据我所知,没有方便的扩展方法可以做到这一点。

以下通用代码:

var value = fixture.CreateAnonymous<MyType>();

看起来像这样,只有在运行时才知道的类型:

var context = new SpecimenContext(fixture.Compose());
var value = context.Resolve(new SeededRequest(typeof(MyType), null))
于 2012-10-17T16:07:22.163 回答