我称之为“的ViewFactory” AA和这个类应该现在提供正确的观点单元测试已经通过MEF
它只有一个方法(将会持续增长),我想写一个单元测试。
类看起来像这样...
public class ViewFactory
{
[ImportMany(AllowRecomposition=true)]
IEnumerable<ExportFactory<DependencyObject, IViewMetaData>> Views { get; set; }
public DependencyObject GetViewByName(string name)
{
DependencyObject view = null;
try
{
view = Views.Where(v => v.Metadata.ViewName == name).FirstOrDefault().CreateExport().Value;
return view;
}
catch (Exception ex)
{
return view;
}
}
}
什么,我想要的是考验我的方法,但不知道怎么做,因为浏览的名单是由运行时...
我想测试一下,如果我得到一个有效的名称 和 我也想测试一个观点,如果我得到空,如果我有一个无效的名称
会是怎样的正确方法?
感谢您的答复。你能提供一些细节吗?你的意思只是设定清单?或者你的意思是假装或嘲笑组成的一些mef魔术......如果是这样的话?如果你可以提供更多的细节,这将是非常好的... – silverfighter 2010-09-07 22:11:11
@silverfighter关于如何测试MEF类的更多细节,请看这个问题:http://stackoverflow.com/questions/2851140/mef-and-unit-testing -with-nunit – 2010-09-08 01:30:47
@silverfighter:我不会使用MEF自己来设置这个列表......这听起来不像是单元测试应该做的事情。只需在单元测试中手动设置“视图”,就好像您根本不使用MEF。 – 2010-09-08 05:20:46