2011-09-19 64 views
0

我正在编写一个简单的关键字驱动测试框架。它需要一个包含动作的XML文件。我在运行时从xml文件加载这些动作,并使用反射,我在c#中调用相应的方法。事情大致是这样的:关键字驱动测试框架的设计模式建议

<Action>Launch 
    <Application>Notepad.exe</Application> 
    <RunElevated>True</RunElevated> 
    <Test>ApplicationLaunch</Test> 
</Action> 

推出便actulally是一个方法的名称。

什么样的设计模式最适合这个问题?

回答

1

最有可能你会使用一些设计模式,具体取决于您需要的可扩展性,消除重复等

解析,您可以创建使用Builder测试XML之后。每个测试用例都可以遵循Command模式,因此抽象运行和验证测试的细节。

某些测试可能是使用Composite模式运行多个测试的测试套件。

我建议你看看现有的单元测试框架的灵感来源。

1

,我很快就拿出了一个的解决方案是建立

Interface Operation 
{ 
    public Run() 
} 

每个对象都必须实现它。除了创建实现一个接口的对象的哈希值并知道如何运行不同的任务。关键将是操作,执行操作。

另一个想法是使用结构模式并基于操作创建对象。