Azure DevOps Pipelines:Newman the cli Companion for Postman on a self-hosted agent (Windows)
Azure DevOps Pipelines: Newman the cli Companion for Postman on a self-hosted agent (Windows)
我正在 YAML 管道中使用任务“Newman the cli Companion for Postman”(Link) 运行 Postman 集合用于测试和预热目的。
我使用如下任务:
- task: carlowahlstedt.NewmanPostman.NewmanPostman.NewmanPostman@4
displayName: 'Newman - Postman'
inputs:
collectionFileSource: '$(Pipeline.Workspace)/drop/Postman'
Contents: '**\*_collection.json'
folder: Release
environment: '$(Pipeline.Workspace)/drop/Postman/$(Environment).postman_environment.json'
ignoreRedirect: false
bail: false
sslInsecure: false
reporters: 'html,junit'
reporterHtmlExport: '$(Pipeline.Workspace)/drop/Postman'
htmlExtraDarkTheme: false
htmlExtraLogs: false
htmlExtraTestPaging: false
reporterJUnitExport: '$(Pipeline.Workspace)/drop/Postman'
在托管代理上这样做很好,但在使用自托管代理时,我得到:
##[error]Unable to locate executable file: 'newman'. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.
我在代理上安装了 newman 和 newman-reporter-html,并且在登录到代理时能够运行它。
我该如何解决这个问题?
为了解决我添加的问题
pathToNewman: 'C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\newman.cmd'
任务定义。如果代理找不到版本,则使用该路径。
结果任务看起来像
- task: carlowahlstedt.NewmanPostman.NewmanPostman.NewmanPostman@4
displayName: 'Newman - Postman'
inputs:
collectionFileSource: '$(Pipeline.Workspace)/drop/Postman'
Contents: '**\*_collection.json'
folder: Release
environment: '$(Pipeline.Workspace)/drop/Postman/$(Environment).postman_environment.json'
pathToNewman: 'C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\newman.cmd'
ignoreRedirect: false
bail: false
sslInsecure: false
reporters: 'html,junit'
reporterHtmlExport: '$(Pipeline.Workspace)/drop/Postman'
htmlExtraDarkTheme: false
htmlExtraLogs: false
htmlExtraTestPaging: false
reporterJUnitExport: '$(Pipeline.Workspace)/drop/Postman'
我不确定为什么它自己找不到已安装的版本。因此,如果有人有想法,分享会很棒。
我正在 YAML 管道中使用任务“Newman the cli Companion for Postman”(Link) 运行 Postman 集合用于测试和预热目的。
我使用如下任务:
- task: carlowahlstedt.NewmanPostman.NewmanPostman.NewmanPostman@4
displayName: 'Newman - Postman'
inputs:
collectionFileSource: '$(Pipeline.Workspace)/drop/Postman'
Contents: '**\*_collection.json'
folder: Release
environment: '$(Pipeline.Workspace)/drop/Postman/$(Environment).postman_environment.json'
ignoreRedirect: false
bail: false
sslInsecure: false
reporters: 'html,junit'
reporterHtmlExport: '$(Pipeline.Workspace)/drop/Postman'
htmlExtraDarkTheme: false
htmlExtraLogs: false
htmlExtraTestPaging: false
reporterJUnitExport: '$(Pipeline.Workspace)/drop/Postman'
在托管代理上这样做很好,但在使用自托管代理时,我得到:
##[error]Unable to locate executable file: 'newman'. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.
我在代理上安装了 newman 和 newman-reporter-html,并且在登录到代理时能够运行它。
我该如何解决这个问题?
为了解决我添加的问题
pathToNewman: 'C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\newman.cmd'
任务定义。如果代理找不到版本,则使用该路径。
结果任务看起来像
- task: carlowahlstedt.NewmanPostman.NewmanPostman.NewmanPostman@4
displayName: 'Newman - Postman'
inputs:
collectionFileSource: '$(Pipeline.Workspace)/drop/Postman'
Contents: '**\*_collection.json'
folder: Release
environment: '$(Pipeline.Workspace)/drop/Postman/$(Environment).postman_environment.json'
pathToNewman: 'C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\npm\newman.cmd'
ignoreRedirect: false
bail: false
sslInsecure: false
reporters: 'html,junit'
reporterHtmlExport: '$(Pipeline.Workspace)/drop/Postman'
htmlExtraDarkTheme: false
htmlExtraLogs: false
htmlExtraTestPaging: false
reporterJUnitExport: '$(Pipeline.Workspace)/drop/Postman'
我不确定为什么它自己找不到已安装的版本。因此,如果有人有想法,分享会很棒。