将CodedUI测试升级到VS 2015

时间:2016-02-22 14:53:19

标签: visual-studio-2015 coded-ui-tests tfs2015

我已从VS 2013更新到VS 2015,TFS 2013更新到TFS 2015和.NET 4.5.2到.NET 4.6.1。

现在我遇到了我的编码UI测试没有运行的问题。问题是Microsoft不支持使用TFS 2015的测试代理和测试控制器。他们建议在使用TFS 2015运行编码的UI测试时使用Agents for VS 2013 Update 5(请参阅例如herehere)。

我为每次测试得到的错误是:

  

单元测试适配器抛出异常:无法加载文件或程序集'Microsoft.VisualStudio.QualityTools.CodedUITestFramework,Version = 14.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一。系统找不到指定的文件..

测试代理程序上提供的版本为12.0.0.0(由VS 2013 Update 5的代理商提供)。

我有一个运行VS 2015的构建控制器,它在编译期间具有所需的程序集。在我的测试代理上,这些程序集不可用,因为我无法安装VS 2015的代理。原因是不支持并行安装Agent for VS 2013和Agents for VS 2015 [我自己尝试过这个 - 它不起作用]

Here建议扩展App.config。这种方法对我不起作用(无论是使用asm.v1还是使用asm.v2)。

在我的* .csproj文件中,所有引用都列出了特定的版本= false。

我还尝试复制程序集(复制local = true)并将它们添加为部署项目,但这是一个永无止境的程序集列表....

我有什么想法可以解决这个问题吗?

谢谢

1 个答案:

答案 0 :(得分:5)

我们最近进行了类似的升级(从TFS 2010开始),我们记录了为使其正常运行所做的更改。无论建议如何,我们使用TFS 2015代理来运行我们的CodedUI测试,它运行正常。您的错误表明您没有在构建代理程序上安装VS2015。我建议使用新的TFS 2015代理商,或者你可以在2013代理商上安装VS2015。

http://dotnetcatch.com/2015/10/01/tfs-2010-to-2015-upgrade-codedui-feature-test-builds/

其他尝试:

  • 更改构建过程模板以使用更高版本(我们使用TfvcTemplate12.xaml)
  • 使用程序集绑定将旧的CodedUI程序集重定向到新版本
...
<dependentAssembly>
        <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.WindowsStore.CodedUITestFramework">> publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="10.0.0.0-14.0.0.0" newVersion="14.0.0.0" />
      </dependentAssembly>
...
  • 将代理更改为以交互模式运行