【问题标题】:The directory containing the assemblies for the Visual Studio Test Runner is not valid包含 Visual Studio 测试运行程序的程序集的目录无效
【发布时间】:2013-12-08 10:57:22
【问题描述】:

我们已将 TFS 安装从 2012 年升级到 2013 年。在运行我们的构建时,如果启用了单元测试,它们将失败并出现以下错误:

TF900547: The directory containing the assemblies for the Visual Studio Test Runner 
          is not valid ''

升级后未更改构建过程模板或构建定义。升级过程并没有改变它们。 我在哪里可以提供 Visual Studio Test Runner 的路径以及它在磁盘上的什么位置?

我不知道“Visual Studio Test Runner”是否是 2013 年的新选项,或者我们之前使用 TFS 2012 时是否也使用过此设置。

我们在构建服务器上使用 Visual Studio Professional 2012。

【问题讨论】:

    标签: visual-studio-2012 tfs tfsbuild


    【解决方案1】:

    你有两个选择:

    1. 如果您想继续使用 Visual Studio Test Runner,请安装 Visual Studio 2013 或 Agents for Microsoft Visual Studio 2013
    2. 切换到 MS Test 作为测试运行器,并在 Build-Workflow 中更改工具版本。这将允许您继续在构建服务器上使用 Visual Studio 2012。

    注意:请您 SteveC 将链接发布到仅代理站点

    【讨论】:

    • 安装 Visual Studio 2013 确实使它按预期工作。但我想知道如何让它与 Visual Studio 2012 一起工作。我没有找到工具版本的任何变量。您是否有一些描述构建工作流程工具版本的文档的链接?
    • 我在 msbuild Action 中看到了这一点。如果您真的需要 VS 2012(这是可能的:-))您可以更改工作流程并使用 mstest 操作而不是 AgileTestRunner。在那里你可以设置 toolsPath
    【解决方案2】:

    Oswald's做第二个选择答案:

    1. 右键单击您的构建定义并选择“编辑构建定义...”
    2. 单击构建定义中的“进程”组。
    3. 在“构建过程参数”下找到“自动化测试”组,然后单击省略号。
    4. 将出现“自动测试”对话框,在“要运行的测试”下选择要编辑的测试。
    5. 点击“编辑”,会出现“添加/编辑测试运行”对话框。
    6. 将测试运行器更改为“MSTest.exe 测试运行器”

    注意:我使用的是 TFS2012

    【讨论】:

    • 在开发计算机上使用 VS2013,在服务器上使用 TFS2013 我没有测试运行器的其他选项 - 下拉框显示为灰色,并且“Visual Studio 测试运行器”已修复。
    【解决方案3】:

    作为在构建机器上安装 Visual Studio 的替代方法,您可以简单地将文件从本地机器复制到构建机器。

    压缩位于

    中的TestWindow文件夹
    C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft
    

    然后将其复制到构建机器,并解压缩到相同的位置。

    【讨论】:

      【解决方案4】:

      我们和 OP 有同样的问题,但是因为 TFS 服务器被认为是一个生产机器(其他部门将它用于其他事情),我们不允许在服务器上安装 VS2013。这同样适用于构建所需的任何第三方工具,它们很难集成到构建中。

      我最终通过使用另一个开发盒作为 TFS 的构建服务器来解决这个问题。通过在开发盒上安装 TFS 的构建服务器组件并在该盒上设置控制器和构建代理,TFS 可以将实际构建的责任传递给开发盒,我们可以在其上安装任何东西,而不会损害 TFS 服务器自己。

      虽然它并不完美——需要额外的盒子和 VS2013 许可证——但它是迄今为止避免污染生产 TFS 盒子的最简单方法。或者,指定一个开发人员自己的盒子并在那里安装构建代理 - 环境已经构建好了,它只会在构建过程中放慢一点速度。

      【讨论】:

        【解决方案5】:

        我们的解决方案是安装 Agents for Microsoft Visual Studio 2013,而不是 Visual Studio 2013

        【讨论】:

          【解决方案6】:

          如果您的项目没有单元测试,您可以在构建定义上禁用单元测试执行。

          为此,编辑构建定义,在进程选项卡下,删除“自动化测试”字段中的所有内容

          【讨论】:

            猜你喜欢
            • 2016-07-04
            • 2014-05-29
            • 1970-01-01
            • 2015-10-19
            • 1970-01-01
            • 1970-01-01
            • 2014-03-14
            • 2015-06-25
            相关资源
            最近更新 更多