使用升级的VS2012解决方案进行测试,但在VS2010中构建

时间:2012-08-24 15:25:03

标签: coded-ui-tests

所以我下载了VS2012 RTM并将我的Coded UI测试项目升级到VS2012版本。

我这样做的原因是因为IE9的部分支持导致VS2010编码UI工具出现问题。

因此,我在开发人员计算机上本地和远程运行测试(使用新的Visual Studio代理工具),测试成功运行。据推测,我的测试现在工作的原因是VS2012升级它们以便它们现在可以与IE9一起使用,对吧?

所以 - 这是我的问题。我希望通过从我们的构建机器启动它们来自动执行这些测试 - 但我们的构建机器仍在VS2010上运行,并且暂时不会改变。

所以我将新的VS2012 Coded UI测试解决方案检入TFS并排队了新的构建 - 所以构建机器构建了我的解决方案。构建成功了。一切都很好。

接下来,我在Microsoft Test Manager中创建了一个新的测试用例,并在我的新解决方案中与有序测试列表相关联。然后我在我的远程测试环境(具有现有的VS2010测试代理工具)上启动了测试(使用现有的VS2010测试控制器)。

但测试失败 - 同样的问题影响了我使用VS2010编码UI测试的测试(由于缺乏对IE9的完全支持)

他们为什么失败?

我是否需要为我的测试控制器和代理提供新的VS 2012代理工具?我必须在VS2012中构建我的解决方案吗?

理想情况下,我不想在我的构建机器上安装VS2012 RTM - 我希望尽可能减少我的测试工作和自动化。

有解决方法吗?

1 个答案:

答案 0 :(得分:1)

您的编码ui测试引用了VS安装或代理程序安装附带的程序集(程序集定义了WpfControl,鼠标,键盘,播放和其他类)。

因此,如果您在具有较旧版本dll的构建/测试计算机上运行它,同样的问题将会保留,测试将无法使用VS2012附带的较新的固定程序集开始。

作为临时解决方法,您可以查看您引用的dll,并确保构建过程将它们与测试程序集放在同一目录中。这样,查找它们将在当前目录中找到而不使用/ path并在VS安装目录中找到它们。