【问题标题】:The TFS 2017 update3 Release definition fails when used VsTest - testAssemblies task?使用 VsTest - testAssemblies 任务时,TFS 2017 update3 Release 定义失败?
【发布时间】:2019-03-28 20:31:14
【问题描述】:

我在发布定义中使用 VsTest - testAssemblies 任务对我们的应用层代码执行集成测试,但如果在其中使用了 VsTest - testAssemblies 任务,则发布定义在开始时会失败。

它在发布定义的摘要中给出了这个错误 - “在池 POCGen-Dev 中找不到满足指定要求的代理:Agent.Name -equals CID21 vstest Agent.Version -gtVersion 2.103.0强>“

如果我从中删除 VsTest - testAssemblies 任务,Release 定义可以正常工作,但是当我在 Release 定义中使用\添加它时它会失败。

我试过谷歌搜索但没有帮助! 谁能告诉我在这种情况下我应该检查或做什么?

脱模剂功能截图

【问题讨论】:

  • 那么,您对Run on Agent 阶段提出了要求吗?错误消息明确指出当前代理不符合要求。只需尝试检查您的发布代理功能以验证代理是否具有这些功能:Agent.Name -equals CID21, vstest , Agent.Version -gtVersion 2.103.0
  • 我检查了代理队列中代理的能力,代理CID21的代理版本目前为2.122.1,我认为VS测试任务要求代理版本为2.103.0,那怎么能我现在更新代理版本?在这种情况下,我必须降级我的代理版本,有可能吗?
  • -gt 表示greater than,所以这不是原因。您确定您的发布代理上有vstest 功能吗?
  • 是的,VSTest 的功能适用于我的发布代理,以前它不存在所以我删除了代理并安装了 VS 2017 并更新了 VS,然后再次安装了代理,然后它开始向我展示 VS 测试的能力。我已在代理的顶部附上了相同功能的屏幕截图。
  • 有点奇怪,有没有试过其他代理?您可以尝试部署一个新代理,然后再试一次以检查它是否有效。

标签: azure-devops azure-pipelines-release-pipeline vstest


【解决方案1】:

我能够通过执行以下步骤解决上述问题的错误-

1.从机器上卸载现有的 Release Agent。

2.即使我的机器上已经安装了 VS 2017,也必须安装 VS 2013。

3.安装VS 2013后,我重启了机器。

4.我在机器上安装了Release Agent,并在Release Agent的System Capabilites下验证了VStest的能力。(VSTest_12.0和VSTest_15.0)。

5.然后触发了触发发布定义的构建定义,并成功执行了包括 Visual Studio 测试任务在内的所有任务。 (VsTest - testAssemblies) 并在发布定义的测试选项卡中显示结果。

我认为 VS 测试任务不适用于 VS 2017 并且不兼容,因此我必须安装 VS 2013,您也可以安装 VS 2015。

功能截图供参考。

【讨论】:

    猜你喜欢
    • 2014-10-23
    • 2020-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 2017-10-20
    • 1970-01-01
    • 2018-05-17
    相关资源
    最近更新 更多