【问题标题】:Test assemblies run from command prompt but not from release pipeline, 'no test assemblies found matching the pattern' error测试程序集从命令提示符而不是从发布管道运行,“没有找到与模式匹配的测试程序集”错误
【发布时间】:2023-03-31 23:07:01
【问题描述】:

最近一次运行的日志;精简以保持简洁

2019-07-18T18:27:42.9323100Z ##[section]Starting: VsTest - testAssemblies
2019-07-18T18:27:42.9323100Z Task         : Visual Studio Test
2019-07-18T18:27:42.9323100Z Description  : Run tests with Visual Studio test runner
2019-07-18T18:27:43.2448193Z ##[debug]agent.workFolder=D:\TFSVSOWork
2019-07-18T18:27:43.5104476Z ##[debug]System.DefaultWorkingDirectory=D:\TFSVSOWork\r45\a
2019-07-18T18:27:43.6979545Z ##[debug]check path : D:\TFSVSOWork\_tasks\VSTest_ef087383-ee5e-42c7-9a53-ab56c98420f9\2.0.55\task.json
2019-07-18T18:27:43.6979545Z ##[debug]set resource file to: D:\TFSVSOWork\_tasks\VSTest_ef087383-ee5e-42c7-9a53-ab56c98420f9\2.0.55\task.json
2019-07-18T18:27:43.6979545Z ##[debug]system.culture=en-US
2019-07-18T18:27:43.6979545Z ##[debug]System.ParallelExecutionType=None
2019-07-18T18:27:43.6979545Z ##[debug]Value of ParallelExecutionType :None
2019-07-18T18:27:43.6979545Z ##[debug]testSelector=testAssemblies
2019-07-18T18:27:43.6979545Z ##[debug]Value of Test Selector :testAssemblies
2019-07-18T18:27:43.6979545Z ##[debug]testAssemblyVer2=XYZAppName.Nunit.UITests.dll
2019-07-18T18:27:43.6979545Z Test assemblies : XYZAppName.Nunit.UITests.dll
2019-07-18T18:27:43.6979545Z ##[debug]testFiltercriteria=null
2019-07-18T18:27:43.6979545Z Test filter criteria : null
2019-07-18T18:27:43.6979545Z ##[debug]searchFolder=\\Servername\D$\FAF_Applications\Http\XYZAppName\test
2019-07-18T18:27:43.6979545Z Search folder : \\Servername\D$\FAF_Applications\Http\XYZAppName\test
2019-07-18T18:27:43.6979545Z ##[debug]runSettingsFile=D:\TFSVSOWork\r45\a
2019-07-18T18:27:43.6979545Z Run settings file : D:\TFSVSOWork\r45\a
2019-07-18T18:27:43.6979545Z ##[debug]overrideTestrunParameters=null
2019-07-18T18:27:43.7135813Z ##[debug]runInParallel=false
2019-07-18T18:27:43.7135813Z Run in parallel : false
2019-07-18T18:27:43.7135813Z ##[debug]runTestsInIsolation=false
2019-07-18T18:27:43.7135813Z Run in isolation : false
2019-07-18T18:27:43.7135813Z ##[debug]runOnlyImpactedTests=false
2019-07-18T18:27:43.7135813Z ##[debug]wmic arg: ["datafile","where","name='C:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\2017\\\\TestAgent\\\\Common7\\\\IDE\\\\Extensions\\\\TestPlatform\\\\vstest.console.exe'","get","Version","/Value"]
2019-07-18T18:27:43.7135813Z ##[debug]exec tool: wmic
2019-07-18T18:27:43.7135813Z ##[debug]Arguments:
2019-07-18T18:27:43.7135813Z ##[debug]   datafile
2019-07-18T18:27:43.7135813Z ##[debug]   where
2019-07-18T18:27:43.7135813Z ##[debug]   name='C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\TestAgent\\Common7\\IDE\\Extensions\\TestPlatform\\vstest.console.exe'
2019-07-18T18:27:43.7135813Z ##[debug]   get
2019-07-18T18:27:43.7135813Z ##[debug]   Version
2019-07-18T18:27:43.7135813Z ##[debug]   /Value
2019-07-18T18:27:43.7135813Z [command]wmic datafile where "name='C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\TestAgent\\Common7\\IDE\\Extensions\\TestPlatform\\vstest.console.exe'" get Version /Value
2019-07-18T18:27:43.8073338Z Version=15.0.0.0
2019-07-18T18:27:43.8073338Z ##[debug]VSTest Version information: 
2019-07-18T18:27:43.8073338Z Version=15.0.0.0
2019-07-18T18:27:43.8073338Z ##[debug]publishRunAttachments=true
2019-07-18T18:27:43.8073338Z ##[debug]vstest.ignoretestfailures=undefined
2019-07-18T18:27:43.8073338Z ========================================================
2019-07-18T18:27:43.8073338Z ##[debug]TestRunResults Directory : D:\TFSVSOWork\r45\a\TestResults
2019-07-18T18:27:43.8073338Z ##[debug]rm -rf D:\TFSVSOWork\r45\a\TestResults
2019-07-18T18:27:43.8073338Z ##[debug]testing directory 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:43.8073338Z ##[debug]testing directory 'D:\TFSVSOWork\r45\a'
2019-07-18T18:27:43.8073338Z ##[debug]mkdir 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:43.8073338Z ##[debug]Searching for test assemblies in: \\Servername\D$\FAF_Applications\Http\XYZAppName\test
2019-07-18T18:27:43.8073338Z ##[debug]defaultRoot: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test'
2019-07-18T18:27:43.8073338Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-07-18T18:27:43.8073338Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.debug: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.nobrace: 'true'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.noglobstar: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.dot: 'true'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.noext: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.nocase: 'true'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.nonull: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.matchBase: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.nocomment: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.nonegate: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]matchOptions.flipNegate: 'false'
2019-07-18T18:27:43.8073338Z ##[debug]pattern: 'XYZAppName.Nunit.UITests.dll'
2019-07-18T18:27:43.8073338Z ##[debug]findPath: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test\XYZAppName.Nunit.UITests.dll'
2019-07-18T18:27:43.8073338Z ##[debug]statOnly: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]found 1 paths
2019-07-18T18:27:43.8229587Z ##[debug]applying include pattern
2019-07-18T18:27:43.8229587Z ##[debug]adjustedPattern: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test\XYZAppName.Nunit.UITests.dll'
2019-07-18T18:27:43.8229587Z ##[debug]1 matches
2019-07-18T18:27:43.8229587Z ##[debug]1 final results
2019-07-18T18:27:43.8229587Z ##[debug]DisableTestImpactAnalysis=undefined
2019-07-18T18:27:43.8229587Z ##[debug]Non TIA mode of test execution
2019-07-18T18:27:43.8229587Z ##[debug]defaultRoot: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test'
2019-07-18T18:27:43.8229587Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.debug: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.nobrace: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.noglobstar: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.dot: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.noext: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.nocase: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.nonull: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.matchBase: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.nocomment: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.nonegate: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]matchOptions.flipNegate: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]pattern: '**\*TestAdapter.dll'
2019-07-18T18:27:43.8229587Z ##[debug]findPath: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test'
2019-07-18T18:27:43.8229587Z ##[debug]statOnly: 'false'
2019-07-18T18:27:43.8229587Z ##[debug]findPath: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test'
2019-07-18T18:27:43.8229587Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-07-18T18:27:43.8229587Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-07-18T18:27:43.9167061Z ##[debug]306 results
2019-07-18T18:27:43.9167061Z ##[debug]found 306 paths
2019-07-18T18:27:43.9167061Z ##[debug]applying include pattern
2019-07-18T18:27:43.9167061Z ##[debug]adjustedPattern: '\\Servername\D$\FAF_Applications\Http\XYZAppName\test\**\*TestAdapter.dll'
2019-07-18T18:27:43.9167061Z ##[debug]1 matches
2019-07-18T18:27:43.9167061Z ##[debug]1 final results
2019-07-18T18:27:43.9167061Z ##[debug]System.Debug=true
2019-07-18T18:27:43.9167061Z ##[warning]vstest.console.exe version does not support the /diag flag. Enable diagnositics via the exe.config files
2019-07-18T18:27:43.9167061Z ##[debug]Processed: ##vso[task.issue type=warning;]vstest.console.exe version does not support the /diag flag. Enable diagnositics via the exe.config files
2019-07-18T18:27:43.9167061Z ##[debug]C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe arg: \\Servername\D$\FAF_Applications\Http\XYZAppName\test\XYZAppName.Nunit.UITests.dll
2019-07-18T18:27:43.9323329Z ##[debug]C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe arg: /logger:trx
2019-07-18T18:27:43.9323329Z ##[debug]C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe arg: /TestAdapterPath:"D:\TFSVSOWork\r45\a"
2019-07-18T18:27:43.9323329Z ##[debug]C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe arg: /framework: ".NetFramework,version=V4.7.2"
2019-07-18T18:27:43.9323329Z ##[debug]testing directory 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:43.9323329Z ##[debug]testing directory 'D:\TFSVSOWork\r45\a'
2019-07-18T18:27:43.9323329Z ##[debug]mkdir 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:43.9323329Z ##[debug]exec tool: C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe
2019-07-18T18:27:43.9323329Z ##[debug]Arguments:
2019-07-18T18:27:43.9323329Z ##[debug]   \\Servername\D$\FAF_Applications\Http\XYZAppName\test\XYZAppName.Nunit.UITests.dll
2019-07-18T18:27:43.9323329Z ##[debug]   /logger:trx
2019-07-18T18:27:43.9323329Z ##[debug]   /TestAdapterPath:"D:\TFSVSOWork\r45\a"
2019-07-18T18:27:43.9323329Z ##[debug]   /framework:
2019-07-18T18:27:43.9323329Z ##[debug]   .NetFramework,version=V4.7.2
2019-07-18T18:27:43.9323329Z [command]"C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe" \\Servername\D$\FAF_Applications\Http\XYZAppName\test\XYZAppName.Nunit.UITests.dll /logger:trx "/TestAdapterPath:\"D:\TFSVSOWork\r45\a\"" /framework: .NetFramework,version=V4.7.2
2019-07-18T18:27:44.0417108Z Microsoft (R) Test Execution Command Line Tool Version 15.9.0
2019-07-18T18:27:44.1198351Z The /Framework argument requires the target .Net Framework version for the test run.   Example:  /Framework:".NETFramework,Version=v4.5.1"
2019-07-18T18:27:44.1198351Z The test source file "D:\TFSVSOWork\r45\a\.NetFramework,version=V4.7.2" provided was not found.
2019-07-18T18:27:44.1198351Z The test source file "D:\TFSVSOWork\r45\a\.NetFramework,version=V4.7.2" provided was not found.
2019-07-18T18:27:44.3854671Z Description: Runs tests from the specified files.
2019-07-18T18:27:44.4323429Z ##[debug]rc:1
2019-07-18T18:27:44.4323429Z ##[debug]success:false
2019-07-18T18:27:44.4323429Z ##[warning]Vstest failed with error. Check logs for failures. There might be failed tests.
2019-07-18T18:27:44.4323429Z ##[debug]Processed: ##vso[task.issue type=warning;]Vstest failed with error. Check logs for failures. There might be failed tests.
2019-07-18T18:27:44.4323429Z ##[error]Error: C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe failed with return code: 1
2019-07-18T18:27:44.4323429Z ##[debug]Processed: ##vso[task.issue type=error;]Error: C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe failed with return code: 1
2019-07-18T18:27:44.4323429Z ##[debug]defaultRoot: 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:44.4323429Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.debug: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.nobrace: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.noglobstar: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.dot: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.noext: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.nocase: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.nonull: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.matchBase: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.nocomment: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.nonegate: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]matchOptions.flipNegate: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]pattern: 'D:\TFSVSOWork\r45\a\TestResults\*.trx'
2019-07-18T18:27:44.4323429Z ##[debug]findPath: 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:44.4323429Z ##[debug]statOnly: 'false'
2019-07-18T18:27:44.4323429Z ##[debug]findPath: 'D:\TFSVSOWork\r45\a\TestResults'
2019-07-18T18:27:44.4323429Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-07-18T18:27:44.4323429Z ##[debug]  D:\TFSVSOWork\r45\a\TestResults (directory)
2019-07-18T18:27:44.4323429Z ##[debug]1 results
2019-07-18T18:27:44.4323429Z ##[debug]found 1 paths
2019-07-18T18:27:44.4323429Z ##[debug]applying include pattern
2019-07-18T18:27:44.4323429Z ##[debug]0 matches
2019-07-18T18:27:44.4323429Z ##[debug]0 final results
2019-07-18T18:27:44.4323429Z ##[debug]Processed: ##vso[task.logissue type=warning;code=002003;]
2019-07-18T18:27:44.4323429Z ##[warning]No results found to publish.
2019-07-18T18:27:44.4323429Z ##[debug]Processed: ##vso[task.issue type=warning;]No results found to publish.
2019-07-18T18:27:44.4323429Z ##[debug]task result: Failed
2019-07-18T18:27:44.4323429Z ##[error]Vstest exited with return code: 1.
2019-07-18T18:27:44.4323429Z ##[debug]Processed: ##vso[task.issue type=error;]Vstest exited with return code: 1.
2019-07-18T18:27:44.4323429Z ##[debug]Processed: ##vso[task.complete result=Failed;]Vstest exited with return code: 1.
2019-07-18T18:27:44.4479679Z ##[section]Finishing: VsTest - testAssemblies

TFS 本地“VS 测试”任务在发布管道中找不到测试程序集。相同的测试在构建管道中或在服务器内从 Command Prompt 本地调用时执行良好。

  1. 测试程序集在构建管道中被识别并从构建服务器复制到开发环境
  2. 在开发服务器中找到测试 dll。测试从命令提示符成功运行,没有问题
  3. 已向所有人授予读/写访问权限
  4. 简单的“hello world”测试,不需要任何包或依赖项

错误:

2019-07-16T18:46:50.2821329Z ##[警告]未找到测试程序集 匹配模式:\xyz.Nunit.UITests.dll,!\obj**

我的配置中缺少什么?Build Defenition

根据建议更新 1.新增发布任务(复制任务已经存在)。 [在此处输入图片描述][2]

  1. 错误依旧

【问题讨论】:

  • 您是否将程序集从构建管道发布到发布管道?
  • 从文件共享运行...我认为您需要将文件复制到本地代理。

标签: c# automated-tests integration-testing azure-pipelines


【解决方案1】:

根据您的描述,由于构建和远程服务器运行良好,这似乎与您的发布管道配置有关。

缺少工件,您需要根据此添加到 Build Pipeline CopyFile 任务

源文件夹:$(system.defaultworkingdirectory)

内容:\bin\$(BuildConfiguration)** **\$(BuildConfiguration)*test*.dll !\obj**

目标文件夹:$(build.artifactstagingdirectory)

请在此处查看类似的问题:Publishing test assemblies with artifacts in order to use them during functional tests on VSTS

Framework Argument 我也在定义中添加了框架参数

【讨论】:

  • 我有复制任务,现在也添加了发布任务。但还是同样的错误
  • 请查看有问题的屏幕截图
  • 嗨@DeepanDstar 您构建定义看起来没有问题,您不需要添加额外的“复制和发布构建工件”任务(已弃用)屏幕截图是一个较旧的示例供您参考。您只需要使用“复制文件”和“发布工件”任务。整个过程: 从服务器获取文件 -- 构建解决方案 -- 运行测试 -- 复制文件 -- 将工件发布到服务器(测试程序集) 在发布管道中,它将从工件中获取文件(测试程序集) ,你只需要确保有对应的dll,然后添加相同的VsTest任务即可运行。
  • 根据你的警告信息,你在发布的VSTest任务中检查了你的匹配规则吗?您的 minimatch 模式是否过于严格导致 azure devops 服务器找不到它?此外,由于您已经提到它可以通过直接在服务器中运行命令来很好地工作。您也可以尝试使用命令行任务来调用测试而不是 vstest 任务。如果以上所有方法仍然无效,请在此处与 system.debug=true 分享您的日志。我们可能需要通过日志来深入研究这个问题。
  • 非常感谢帕特里克!我又往前走了一步。现在给出共享路径后,测试匹配。但仍然出现以下错误消息 2019-07-18T17:08:47.4442807Z \\\D$\\xyz.Nunit.UITests.dll 中没有可用的测试。 确保测试发现者和执行者已注册并且平台和框架版本设置正确,然后重试
猜你喜欢
  • 1970-01-01
  • 2018-05-19
  • 1970-01-01
  • 2020-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多