0

我们有以下设置:

  • TFS 2012
  • 构建控制器/代理 2012
  • 测试控制器/代理 2013
  • 视觉工作室 2013
  • 测试经理/“测试专家” 2013

我正在尝试为 Ranorex 自动化测试创建一个编码的 UI 包装器,如此处所述

在我安装了 VS2013 的本地构建机器上一切正常。我创建了一个包含两个项目的解决方案:一个作为“包装器”的编码 UI 测试项目,以及包含实际 Ranorex 自动化的 Ranorex 项目。Coded UI 包装器项目的引用/dll 都包含在一个单独的项目文件夹中,该文件夹受版本控制 - dll 不是从它们的 C:\Program Files[...] 位置引用的。

这两个项目都在各自包含所有需要的 dll 的文件夹中提供用于编译/构建的 dll。该解决方案在本地编译良好并且也可以执行。构建也可以,但是测试执行不起作用。测试管理器抛出异常说明

找不到 Microsoft.VisualStudio.QualityTools.CodedUITestFramework,版本=11.0.0.0。

为什么 ?!?

除了版本 2012 的构建代理之外,我不知道此引用来自何处。

但是 - 用于编译的 dll 是包含在项目中的,因此构建代理是否为 2012 并不重要,对吧?

我还尝试通过将/p:ToolsVersion=12.0开关添加到 MSBuild 参数来配置构建定义 - 它似乎没有任何区别。

我还尝试将两个项目的目标 .NET 版本更改为 4.0、4.5(在所有可能的排列中),但这没有帮助。

参考来自哪里,我怎样才能摆脱它并使测试在 2013 测试代理上执行?或者这是我们无法解决的不兼容问题?

我应该提一下,Visual Studio 2012 绝不涉及任何地方。我不知道在哪里看或改变哪些参数......

谢谢你的帮助 !

4

1 回答 1

0

该 dllMicrosoft.VisualStudio.QualityTools.CodedUITestFramework由测试项目引用,用于运行测试。

我发现运行测试的代理必须与用于编写测试代码的 Visual Studio 版本相匹配。尝试安装 VS2013 控制器/代理。

编辑

我还没有尝试过,但也许你可以通过你的构建定义在你的测试容器中添加这个 dll。不确定它是否会起作用。

在您的构建定义 > 流程 > 自动化测试 > 指定装配测试文件中(不确定是否翻译,我的是法语)。你有你的测试dll。如果您在此处添加 CodedUITestFramework dll,它可能对代理可用。

于 2014-03-26T18:13:50.643 回答