使用 Intellitetest,您可以指定 Intellitetest 使用的类型,该类型在生成单元测试时适合接口,但是我有一个我希望使用的自定义工厂。
我的定制工厂:
public static partial class LogicFactory
{
/// <summary>A factory for ILogic instances</summary>
[PexFactoryMethod(typeof(ILogic))]
public static ILogic Create(string defaultUICulture, bool saveSuccessful)
{
return Mock.Of<ILogic>(
x =>
x.GetUICulture(It.IsAny<string>()) == defaultUICulture &&
x.Save(It.IsAny<string>(), It.IsAny<string>()) == saveSuccessful);
}
}
我想将此工厂用于ILogic
PEX 尝试创建的所有实例。
我尝试将以下属性添加到 PexAssemblyInfo.cs,并且还尝试将其添加到我的测试上方:
[assembly: PexCreatableByClassFactory(typeof(ILogic), typeof(LogicFactory))]
但是在检测代码时我仍然会收到此运行时警告:
will use Company.Logics.SpecificLogic as ILogic
所以它似乎每次都无视我的工厂。如何强制 Intellitetest 使用我的工厂?