首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TFS2015测试代理中止- PowerShell脚本完成时出现错误

TFS2015测试代理中止- PowerShell脚本完成时出现错误
EN

Stack Overflow用户
提问于 2017-04-11 15:41:34
回答 1查看 568关注 0票数 0

我正在运行一个TFS每晚构建,在过去的几天里,它还没有能够完成所有的测试。使用“测试运行中止”消息几个小时后,它将失败。在此之前,测试总是成功地运行,没有对运行这些测试的系统进行重大更改(甚至是小更改)。

信息:

  • 在构建中运行两个MStest (单元测试)
  • 超时设置为20小时。
  • 竞选大约。失败前15小时
  • 测试设置为失败时继续进行。

当我查看TFS日志中的最新运行时,它列出了以下内容(2017-04-11T06:42:47.5500707Z):

warningDistributedTests:测试运行被中止。记录运行日志的细节。warningDistributedTests:创建了新的测试运行。 项目集合生成服务的warningTest运行排队 warningDistributedTests:测试发现已经启动。 warningDistributedTests:完成测试运行发现。测试运行id: 533 warningDistributedTests: 290个测试用例被发现。 warningDistributedTests:测试执行已经启动。测试运行id : 533 warningDistributedTests:测试运行超时。测试运行id : 533 warningDistributedTests:测试运行中止。测试运行id: 533 errorThe测试运行被中止,导致任务失败。

当我查看运行日志(worker_20170410-234426-utc_864.log)时,我看到:

06:42:47.659516 Microsoft.TeamFoundation.DistributedTask.Agent.Common.AgentExecutionTerminationException: BaseLogger.LogConsoleMessage(scope.JobId = 7ced7f31-e360-47f3-b334-ef20faeaf000,message = ##errorThe测试运行失败,任务失败)。(在Microsoft.TeamFoundation.DistributedTask.Handlers.PowerShellHandler.Execute(ITaskContext上下文中,CancellationToken cancellationToken)在Microsoft.TeamFoundation.DistributedTask.Worker.JobRunner.RunTask(ITaskContext上下文中,TaskWrapper任务,CancellationTokenSource tokenSource)

测试日志中,我没有在VS中看到任何错误,只是对无法连接的警告(我经常看到这些):

W,2060,5,2017/04/10,16:26:03.595,XXXTESTING\QTController.exe,LoadTestResultConnectString测试失败:在建立到Server的连接时发生了网络相关的或特定于实例的错误。找不到或无法访问服务器。验证实例名是否正确,以及Server是否配置为允许远程连接。(提供程序: SQL网络接口,错误: 26 -指定的服务器/实例定位错误)

我还看到在Application日志中同时抛出一个错误:

找不到源应用程序中事件ID 0的说明。引发此事件的组件没有安装在本地计算机上,或者安装已损坏。您可以在本地计算机上安装或修复组件。 如果事件起源于另一台计算机,则显示信息必须与事件一起保存。 这次活动包括下列资料: Error异常: System.ServiceModel.CommunicationException:从管道读取错误:管道已经结束。(109,0x6d)。-> System.IO.IOException:读取操作失败,请参阅内部异常。-> System.ServiceModel.CommunicationException:从管道读取错误:管道已经结束。(109,0x6d)。-> System.IO.PipeException:从管道读取错误:管道已经结束。(109,0x6d). 存在消息资源,但在字符串/消息表中找不到消息。

问题是我真的不知道如何解释这些消息,每个日志都说“测试运行被中止了,任务失败了”,我甚至不确定powershell问题是什么导致的。我也不确定应用程序日志中抛出的错误是否相关,尽管它是在运行失败的同时抛出的。

当你真的不知道是什么导致测试代理失败的时候,研究这个问题也是很困难的。有一些与VSTFS测试代理相关的帖子,但我并不认为这是相关的问题,当然还有一些关于Powershell消息的文章没有多大帮助。

以前有人见过这类问题吗?我认为在过去的几天里,我的构建服务器上的任何东西都没有改变(也许是更新),您认为是什么会导致这样的问题发生呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-23 16:05:26

如果在TFS的"Build“部分中中止了失败的构建(包含测试),它会说它被”中止“了,这就是.如果您查看TFS " test“部分中构建(包含测试)的结果,它将指定测试运行”超出超时“。

显然,MSTest遇到了这个小宝石的默认值。我认为它默认为8小时当没有指定,但我不太确定这一点。无论如何,我在"Default.testsettings“文件中设置了以下设置:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>  
<TestSettings name="TestSettings1">
  <Execution>
    <Timeouts runTimeout="200000000" />
  </Execution>
</TestSettings>

似乎解决了这个问题。测试成功运行,不再超时。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43350558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档