使用newman nodeJS CLI运行邮递员测试的集合时,出现以下错误:
错误:无法获取本地发行者证书
使用以下命令将其作为Teamcity CI构建的一部分运行:
newman run https://www.getpostman.com/collections/<COLLECTION-ID-HERE>
它在Windows上运行,我们有一个企业代理服务器(ZScaler)。
我如何让新人上班?
答案 0 :(得分:5)
只需在collectionID前面添加--insecure即可:
newman运行https://www.getpostman.com/collections/?apiKey =“ your-Postman-Api-Key”-不安全
另外,当使用json文件触发执行时,只需添加--insecure,因此您的命令应为:
newman运行.postman_collection.json-不安全
答案 1 :(得分:1)
问题是纽曼找不到(或不知道)Windows证书存储区中配置的代理服务器使用的自签名SSL证书。使newman(以及几乎所有最近的nodeJS应用程序)知道证书的最简单方法是使用环境变量:
在Windows上:
SET NODE_EXTRA_CA_CERTS=c:\some-folder\certificate.cer
在Linux上:
export NODE_EXTRA_CA_CERTS=/c/some-folder/certificate.cer
您可能还需要使用HTTP_PROXY=http://example.com:1234
env变量来设置代理服务器网址本身。
或者,可以使用build parameters feature of Teamcity
将环境变量添加到该teamcity构建运行时环境中请注意,这适用于Node.js 7.3.0及更高版本(以及LTS版本6.10.0和4.8.0)