我已经通过Pex,Extensions Writer Handbook,但这份文件只有5页,并没有详细说明。我需要更多关于可扩展性的知识。
我已经访问了http://pex.codeplex.com/,它为不同的测试框架扩展了pex,并添加了DySy和ASE扩展。但是,它是重新编写的pex版本0.18,当前是0.94.x。许多类都进行了重构和更改。因此,它不能编译。
我被困在哪里了,我需要根据我的逻辑扩展测试方法名称的创建,我应该从哪里开始?对于pex 0.94.x,web上有没有什么开源项目可以供我学习和参考?
发布于 2013-08-13 01:41:23
您是对的,手册对更改测试方法的名称创建没有帮助我在这个博客的http://tech.rofas.net/?tag=/code上找到了这段代码
class KeepOriginalTestNamesAttribute : PexTestNamerAttributeBase
{
protected override IPexTestNamer CreateTestNamer(IPexExplorationComponent host)
{
return new TestNamer(host);
}
class TestNamer : PexExplorationComponentElementBase, IPexTestNamer
{
private readonly SafeSet<string> _names;
public TestNamer(IPexExplorationComponent host) : base(host)
{
_names = new SafeSet<string>();
}
public bool TryCreateTestName(IPexGeneratedTest test, out string testName)
{
var template = ReflectionHelper.EscapeForMetadataName(test.ExplorationName.Method.ShortName);
testName = MetadataHelper.GetUniqueNumberedName(_names, template);
_names.Add(testName);
Debug.WriteLine("*** " + testName + " ***");
Debug.WriteLine(test.BodyCode);
return true;
}
}
}https://stackoverflow.com/questions/13605535
复制相似问题