因此,我下载了VS2012 RTM,并将我编码的UI测试项目升级到VS2012版本。
我这样做的原因是,由于对VS2010的部分支持,我在使用IE9编码的UI工具时遇到了问题。
因此,我在本地和远程(利用新的Visual Studio代理工具)从我的开发人员机器上运行测试,并且测试成功。大概,我的测试现在可以工作的原因是VS2012升级了它们,所以它们现在可以与IE9一起使用,对吧?
所以-这就是我的问题。我想通过从我们的构建机器上启动这些测试来自动化这些测试--但是我们的构建机器仍然在VS2010上运行,而且暂时这一点不会改变。
因此,我将新的VS2012编码的UI测试解决方案签入到TFS中,并对新的构建进行排队-因此构建机器构建了我的解决方案。构建是成功的。一切都很好。
因此,接下来我在Microsoft test Manager中创建了一个新的测试用例,并与我的新解决方案中的有序测试列表相关联。然后,我在我的远程测试环境(具有现有的VS2010测试代理工具)上启动了测试(使用现有的VS2010测试控制器)。
但是测试失败了--同样的问题影响了我对VS2010编码的UI测试的测试(由于缺乏对IE9的完全支持)
为什么他们失败了?
我的测试控制器和代理是否需要新的VS 2012代理工具?我必须在VS2012中构建我的解决方案吗?
理想情况下,我不想在我的构建机器上安装VS2012 RTM -我希望尽可能少地让我的测试工作和自动化。
有什么办法可以解决这个问题吗?
发布于 2012-08-28 08:21:47
您的编码ui测试引用VS安装或代理安装附带的程序集(这些程序集定义了WpfControl、鼠标、键盘、播放和其他类)。
因此,如果你在构建/测试机器上运行它,使用旧版本的动态链接库,同样的问题将会继续存在,测试将不会使用VS2012附带的较新的修复程序集。
作为一种临时解决办法,您可以检查您引用的dll,并确保构建过程将它们放在与测试程序集相同的目录中。这样,对它们的查找将在当前目录中找到,而无需使用/path并在VS安装目录中找到它们。
https://stackoverflow.com/questions/12112315
复制相似问题