在 VSTS 中执行运行功能测试任务时出错

2024-03-17

在 VSTS 2015 中,我们在使用 NUnit 测试框架的项目中构建和发布管道设置。 我们正在尝试使用“运行功能任务”配置集成测试用例执行,任务配置如下面的屏幕截图所示:

可视化测试代理部署任务用于在目标计算机中部署 NUnit 测试代理。

在目标机器中创建一个文件夹,其中所有测试程序集都被复制,即 C:\TestDlls 和 NUnit 适配器程序集 C:\PIMPackages

代理部署任务正在成功执行,但在以下时间中止 “运行功能测试”并显示以下错误消息:

2016-04-14T09:51:08.0151865Z DistributedTests: Test run '65' is in 'Aborted' state.
2016-04-14T09:51:18.0177458Z ##[warning]DistributedTests: Test run is aborted. Logging details of the run logs.
2016-04-14T09:51:18.2601235Z ##[warning]DistributedTests: New test run created.
2016-04-14T09:51:18.2601235Z ##[warning]Test Run queued for Project Collection Build Service (deepaksoniv).
2016-04-14T09:51:18.2611323Z ##[warning]DistributedTests: Test discovery started.
2016-04-14T09:51:18.2621353Z ##[warning]DistributedTests: Test Run Discovery Aborted . Test run id : 65
2016-04-14T09:51:18.2631347Z ##[warning]DistributedTests: UnExpected error occured during test execution. Try again.
2016-04-14T09:51:18.2631347Z ##[warning]DistributedTests: Error : NUnit Adapter 3.0.8.0 discovering test is finished
2016-04-14T09:51:18.2641325Z ##[warning]DistributedTests: Test run aborted. Test run id: 65
2016-04-14T09:51:18.2681313Z ##[error]The test run was aborted, failing the task.

在部署测试代理的目标计算机中,DTAEXecutionHost 日志文件摘要:

V, 3780, 11, 2016/04/14, 09:50:57.073, PIMNEWVM\DTAExecutionHost, TestCaseFilter.GetTestPropertiesInTraitDictionary : Populating trait dictionary with test case properties.
V, 3780, 11, 2016/04/14, 09:50:57.073, PIMNEWVM\DTAExecutionHost, TestCaseFilter.GetTestPropertiesInTraitDictionary : Populating trait dictionary with test case 

-------------------------------------------------------------------------------------------------

[test] 8260 ms
V, 3780, 10, 2016/04/14, 09:51:00.401, PIMNEWVM\DTAExecutionHost, TestExecutionServiceCommandQueueListener:DispatchAsync
I, 3780, 10, 2016/04/14, 09:51:00.401, PIMNEWVM\DTAExecutionHost, ExecutionTaskStateModel.ListenerCommandReceived : Requesting a stop on Stop command.
I, 3780, 10, 2016/04/14, 09:51:00.401, PIMNEWVM\DTAExecutionHost, TestExecutionServiceCommandQueueListener.DispatchAsync : Stop listening on Stop command.
I, 3780, 9, 2016/04/14, 09:51:00.401, PIMNEWVM\DTAExecutionHost, ExecutionTaskStateModel.RunStateTransitionsAsync : The task was cancelled
I, 3780, 9, 2016/04/14, 09:51:00.416, PIMNEWVM\DTAExecutionHost, Removing agent setting 

-------------------------------------------------------------------------------------------------

I, 3780, 9, 2016/04/14, 09:51:00.416, PIMNEWVM\DTAExecutionHost, Removing agent setting DtlMachineName on agent machine - 64 bit hive
I, 3780, 9, 2016/04/14, 09:51:00.416, PIMNEWVM\DTAExecutionHost, Removed agent setting DtlMachineName on agent machine - 64 bit hive
I, 3780, 9, 2016/04/14, 09:51:00.416, PIMNEWVM\DTAExecutionHost, ExecutionHost.UnregisterFromServer : Agent is unregistering from server.

请帮忙。


当尝试使用“运行功能测试”构建步骤从 MTM 测试计划运行测试方向时,我们遇到了类似的问题,但引用了具有链接到 NUnit 测试用例的关联自动化的测试用例。

看来“运行功能测试”构建步骤以某种方式在后端使用 vstest.console.exe 在测试代理上执行测试。 vstest.console 默认情况下不知道如何运行 NUnit 测试,如果从命令行运行,则将使用 /TestAdapterPath:。由于这在构建中是不可能的,因此我们需要 vstest.console 来了解默认情况下如何执行 NUnit 测试。

为了解决此问题,作为部署到远程测试代理计算机之前构建测试解决方案的一部分,我们包含了 NUntTestAdapter 的 NuGet 包。这应该下载以下 DLL:

  • nunit核心.dll
  • nunit.core.interfaces.dll
  • nunit.util.dll
  • NUnit.VisualStudio.TestAdapter.dl

然后,我们将这些 DLL 部署到远程计算机的以下位置:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions

从那时起,您应该能够直接在测试代理上从 vstest.console.exe 执行测试,而无需引用 /TestAdapterPath 或构建(因为它使用 vstest.console 作为“运行功能测试”的一部分) )将尝试使用该适配器来拾取并运行 NUnit 测试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 VSTS 中执行运行功能测试任务时出错 的相关文章

  • Git 到 TFS 2008 的单向迁移(有历史记录)

    我是 Git 的新手 我正在探索 Git 存储库到 TFS 的单向一次性迁移 有历史记录 我正在研究插件git tfs https github com git tfs git tfs 我找不到关于这个特定场景的任何帮助 维基 博客 在这种
  • 更改 Kubernetes 中的 CPU 管理器策略

    我正在尝试更改我管理的 Kubernetes 集群的 CPU 管理器策略 如上所述here https kubernetes io docs tasks administer cluster cpu management policies
  • Visual Studio 中的解决方案文件夹是什么?

    我有一个 Visual Studio 2008 解决方案 我想在解决方案中包含一个真实的文件夹 但不是在项目级别 而是在解决方案级别 我注意到您可以右键单击该解决方案并添加一个解决方案文件夹 但它显示为一些白色文件夹 我怀疑它到底应该是什么
  • 通过 PowerShell 在 TFS 上签出/签入文件

    我想使用 PowerShell 自动将编辑后的 csproj 文件签出和签入到 TFS 我只需要将单个文件更改为待处理并签入这些文件 有谁知道如何做到这一点 我和你有同样的痛苦 最后找到了正确的方法 干得好 Load the TFS pow
  • 处理单元测试和集成测试之间的重复

    我有一个由多个类实现的算法 所有类都由单元测试覆盖 我想重构它 这将改变两个类的行为 当我更改一个类及其测试时 所有单元测试都会通过 但在重构完成之前算法会变得不正确 这个例子说明 单元测试的完全覆盖有时是不够的 我需要在输入输出方面对整个
  • MongoError:池正在耗尽,在集成测试中使用 MongoMemoryServer 时禁止新操作

    我在用着MongoMemoryServer编写集成测试 我有两个集成测试文件 当我运行 IT 测试时 我看到以下内容 我不明白为什么 我正在使用 jestjs 测试框架 当我有两个 IT 测试文件时 我看到以下错误 MongoError p
  • TFS 2017 - 构建服务器不构建 Visual Studio 2017

    上周在我的构建服务器上升级 Visual Studio 2017 后 MS Build 15 0 不再使用 因此 每当我尝试编译使用新功能的 Visual Studio 2017 项目时 它们都会失败 构建日志中的警告是 找不到 Visua
  • TFS 2012禁用多重签出不起作用[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我想禁用我们的 TFS 项目的多次签出 我期望它的工作方式如下 Bob 查看 File1 cs Joe 在 Visual Stud
  • TFS Pending Changes 能否像 SourceGear Vault 一样显示真正更改的文件?

    我一直在使用 SourceGearVault 进行一些个人项目 并使用 Team Foundation Server 进行工作项目 TFS 缺少的一件事是 Vault 在其签入对话框窗口中具有的一项简单功能 在 Vault 客户端中 您可以
  • 将源代码从 git 迁移到 TFVC

    我们使用的是Visual Studio Online 我们使用TFS的git支持 我们现在想停止使用 git 并使用 TFVC 将源代码迁移到 TFVC 的最佳解决方案是什么 假设您正在 VSO 中创建另一个项目并移动源代码 按照目前的情况
  • 如何在工作项更改事件中获取对 TFS 工作项的引用?

    看起来这非常简单 但我正在努力寻找我需要的东西 我正在实现一个 TFS 2013 事件处理程序 并且只想获取对引发更改事件的工作项的引用 获取标题似乎很容易 但我在事件签名对象中找不到属性或方法来为我提供对 WorkItem 对象的引用或查
  • 在 Visual Studio 中查看 TFS 服务器端更改,无需获取最新版本

    在 Visual Studio 2010 中 我希望能够查看其他团队成员已签入的更改 而无需实际执行获取最新 这将覆盖本地文件 有没有办法对批量文件执行此操作 而不是选择每个文件并将其与服务器版本进行比较 我使用 查看历史记录 窗口 然后选
  • 如何将/ff分支提升到HEAD

    我有一个受保护的分支 只有在集成构建上的集成构建通过后 才应提升 快进该分支 我目前尝试通过在集成分支的拉取请求上构建集成来解决这个问题 一旦成功 只需将发布分支快速转发到集成分支的尖端 但是 当我在 TFS 构建系统上构建分支时 它将检出
  • TFS自定义签入策略调试

    我创建了一个自定义签入政策 如下面的链接所示 http msdn microsoft com en us library bb668980 aspx http msdn microsoft com en us library bb66898
  • 对 git Push 运行单元测试,对 Pull 请求运行集成测试

    在构建 R 包时 我们使用 testthat 来编写测试 我们有 2 个文件 特定包的测试文件 特异性R 我们用它来确保所有包继续一起工作并且总体结果良好 整体R 当前 当我们推送到 github 或通过 Travis 创建 PR 时 都会
  • 为什么我无法通过 Powershell DSC 在无人值守模式下配置 TFS Build Service?

    使用以下 DSC 配置 仅资源部分的片段 删除 SO 的前导码 诊断和 Start DscConfiguration 部分 Package TFSServer2013 Name Microsoft Team Foundation Serve
  • TFS 2012 .gitignore .hgignore 等效项

    在TFS 2012中 有一种新的本地工作模式 本地工作区 这是个好消息 没有 签出 文件 使用 VS 以外的程序中的文件时 不会再出现只读文件和问题 不再有 获取最新 实际上并未获取最新的情况 但这也意味着我需要一种方法来告诉 TFS 在监
  • 从 teamcity 运行测试时,SetUp 方法失败

    我通过 nunit 在本地成功运行测试 但是 当我尝试通过 teamcity 运行它们时 一些测试通过了 但有些测试失败 并出现以下错误 设置方法失败 System Runtime InteropServices COMException
  • TFS:使用主分支的更改更新分支

    所以 我们有我们的主开发线 我创建一个分支 开发人员 b 创建一个分支 我们俩都做一些工作 开发人员 b 完成他的工作 合并回主开发线 我知道他的更改会影响我 我不想稍后再处理冲突 而是想使用现在主开发行中的更改来更新我的分支 这样我就可以
  • 如何在 NUnit 测试中使用 Selenium 获取 javascript 日志?

    我正在尝试使用 Selenium ChromeDriver 从 Visual Studio 上的 NUnit 测试中检索 Javascript 控制台日志 但我在日志上得到空值 我已经尝试了下面的代码 但它会在 driver Manage

随机推荐