Visual Studio测试任务随机失败,没有错误消息,从进程返回的退出代码1:node.exe

时间:2020-11-09 16:15:46

标签: azure-devops azure-pipelines

我们遇到的这个问题困扰着我们的工程团队已经一年多了,我们在解决这个问题上无法取得任何进展。 question on Stack Overflow与我们所经历的极为相似。

我们有多个管道,这些管道使用“ Visual Studio测试”任务从单个程序集中运行一组NUnit测试。该项目中有1400-1500个单元测试,需要进行测试。NUnit测试适配器通过NuGet任务(安装NUnit3TestAdapter)进行部署。该测试程序集具有以下设置:

  • MSBuild Architecture = x86
  • Platform = AnyCPU
  • Configuration =发布
  • 强名签名

在多个管道中,此步骤随机但始终如一地以零错误消息或过程结束原因的痕迹结束。运行拉取请求的后续构建通常会成功,但有时还会失败。在这种情况下,我们将其称为“片状构建”,在这种情况下,如果输入相同的确切代码,则构建可能会失败,然后又可以通过。

这是我们从管道中收到的唯一错误消息:

## [错误]退出进程1的退出代码:文件名'REDACTED \ externals \ node \ bin \ node.exe',参数'“ REDACTED_work_tasks \ VSTest_ef087383-ee5e-42c7-9a53-ab56c98420f9 \ 2.170.1 \ runvstest.js“'。
整理:集成测试

这些测试是我们的“集成测试”,执行许多设置步骤来创建系统的功能版本,包括通过Kestrel创建Web服务器来托管我们的API,连接到在构建服务器上运行的(localdb)来还原数据库.bak文件并应用数据库项目(dacpac)并连接到Redis(也在本地安装在构建服务器上)。

我们正在努力确定下一步措施,因此我正在与社区联系,以了解是否有人在此问题上受苦,是否有解决问题的想法,甚至是解决方案!

编辑2020-11-10

昨天我将管道变量system.debug设置为true,这是它在我们一次不稳定的构建中捕获的输出。

##[error\]Exit code 1 returned from process: file name 'E:\\servername\\externals\\node\\bin\\node.exe', arguments '"E:\\servername\\\_work\\\_tasks\\VSTest\_ef087383-ee5e-42c7-9a53-ab56c98420f9\\2.170.1\\runvstest.js"'.

##[debug\]Microsoft.VisualStudio.Services.Agent.Util.ProcessExitCodeException: Exit code 1 returned from process: file name 'E:\\servername\\externals\\node\\bin\\node.exe', arguments '"E:\\servername\\\_work\\\_tasks\\VSTest\_ef087383-ee5e-42c7-9a53-ab56c98420f9\\2.170.1\\runvstest.js"'.

  at Microsoft.VisualStudio.Services.Agent.Util.ProcessInvoker.ExecuteAsync(String workingDirectory, String fileName, String arguments, IDictionary\`2 environment, Boolean requireExitCodeZero, Encoding outputEncoding, Boolean killProcessOnCancel, InputQueue\`1 redirectStandardIn, Boolean inheritConsoleHandler, Boolean keepStandardInOpen, Boolean highPriorityProcess, CancellationToken cancellationToken)

  at Microsoft.VisualStudio.Services.Agent.ProcessInvokerWrapper.ExecuteAsync(String workingDirectory, String fileName, String arguments, IDictionary\`2 environment, Boolean requireExitCodeZero, Encoding outputEncoding, Boolean killProcessOnCancel, InputQueue\`1 redirectStandardIn, Boolean inheritConsoleHandler, Boolean keepStandardInOpen, Boolean highPriorityProcess, CancellationToken cancellationToken)

  at Microsoft.VisualStudio.Services.Agent.Worker.Handlers.DefaultStepHost.ExecuteAsync(String workingDirectory, String fileName, String arguments, IDictionary\`2 environment, Boolean requireExitCodeZero, Encoding outputEncoding, Boolean killProcessOnCancel, Boolean inheritConsoleHandler, CancellationToken cancellationToken)

  at Microsoft.VisualStudio.Services.Agent.Worker.Handlers.NodeHandler.RunAsync()

  at Microsoft.VisualStudio.Services.Agent.Worker.TaskRunner.RunAsync()

  at Microsoft.VisualStudio.Services.Agent.Worker.StepsRunner.RunStepAsync(IStep step, CancellationToken jobCancellationToken)

0 个答案:

没有答案