如何数据驱动编码ui测试?

时间:2012-02-22 20:42:24

标签: c# visual-studio-2010 tdd coded-ui-tests

我很乐意使用VS2010 Ultimate录制编码UI测试。

我遇到的问题是在我们构建的Silverlight应用程序中测试的一些UI控件需要特定于机器的数据。

如果我在我的机器上运行测试,它们运行得很好。但是,我的队友也必须在自己的机器上运行相同的测试。问题是编码的UI测试是用我的机器名称记录的,作为被测应用程序中某些文本框的输入设置。除非我的团队成员用他们自己的机器名重新记录相同的测试,否则这些测试将失败。

经过一番挖掘后,我发现您可以将CSV,EXCEL,数据库或XML文件关联起来,以驱动您的编码ui测试。但是,MSDN和其他地方的所有示例仅显示预配置的应答文件,其中大多数都是CSV格式。

答案文件中发生了什么,以及如何在编码的ui测试重放时创建我自己的XML格式来驱动输入到文本框中的值?

非常感谢任何链接和指导!

2 个答案:

答案 0 :(得分:1)

将业务逻辑与UI分开,您对UI位的任何功能/行为测试都没有问题。然后,您将解决数据问题。至于测试UI位,有几种方法可以解决这个问题。一种相对简单的方法是使用模拟引导IOC容器并在模拟数据之上设置UI测试。

如果您想进行更自动化的UAT测试,可以使用相应的工具。不确定Silverlight / WPF本身(因为我没有花费大量时间,因为将所有业务逻辑从UI位移出),但我认为必须有一个。

答案 1 :(得分:1)

免责声明:不是CodedUI的粉丝。

Link1 - Creating a data-driven CodedUI test

应该可以使用record-n-replay来生成CodedUI测试。然后进行上面列出的修改,使用输入集的输入来驱动它。

但是我不确定重新录制测试是否会删除你的修改......你必须尝试一下才能看到。如果你需要这个,我建议在脚本模式下使用CodedUI(而不是record-n-replay)。