我已经下载了 POSTMAN Chrome 应用程序,以便在我的本地开发环境中测试一些 Web API。
此外,我还为 Postman 下载了 Newman cmd-line 实用程序。
有关更多信息,请参阅 https://www.getpostman.com/docs/newman_intro。
因此 Postman 应用程序运行良好,cmd-line 实用程序也运行良好。
但是,一旦我将它与我的 Jenkins 测试服务器集成,测试就会失败。
主要问题是它无法启动 Newman
。
在标准的 cmd 提示符下,我可以成功运行 Newman 测试脚本:
newman -c API-Collection.json -n 3
运行n次。
在
Jenkins
构建服务器 GUI 中,我在“执行 Shell”选项下添加构建脚本。但它没有找到
Newman
,因为这个构建错误显示: FailedConsole Output
Started by user anonymous
Building in workspace C:\Program Files (x86)\Jenkins\workspace\Web Api Test1 (Team Gecko)
[Web Api Test1 (Team Gecko)] $ "C:\Program Files\bin\sh.exe" -xe C:\Windows\TEMP\hudson2522506155962538386.sh
+ newman -c C:\Users\robertjm\Documents\POSTMAN Files\Workbench-API-Collection.json -n 3 -y 1000 --exitCode 1 -o output.json -H output.html
C:\Windows\TEMP\hudson2522506155962538386.sh: newman: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE
如果有人可以帮助我解决此路径问题,我将不胜感激。
谢谢,
鲍勃
最佳答案
最终解决方案是:
1)添加构建步骤“执行Windows批处理命令”并在下面添加两行:
2) 将目录更改为 newman\bin:
cd \Users\bob\appdata\roaming\npm\node_modules\newman\bin
3) 运行
node newman
而不是简单地尝试运行 newman
node newman -c "C:\\Users\\bob\\Documents\\POSTMAN Files\\Workbench-API-Collection.json"
两个棘手的部分是:
1) 像这样
newman -c myCollection.json
一样运行 newman 不起作用,因为 Jenkins 无法像在直接的 Win cmd 提示符下那样解析这个节点模块。2) 尝试定位 Newman 模块很困难,因为它隐藏在
%appdata%
文件夹内(即 c:\users\bob\$appdata$ )。我希望这对 future 的人有所帮助。
祝你好运。
关于jenkins - 将 Postman 测试脚本与 Jenkins 构建服务器集成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36632059/