newman CLI returns "error: unable to get local issuer certificate" in teamcity build
newman CLI returns "error: unable to get local issuer certificate" in teamcity build
使用 newman nodeJS CLI 运行 邮递员测试集合我得到以下错误:
error: unable to get local issuer certificate
它是 运行 作为 Teamcity CI 使用以下命令构建的一部分:
newman run https://www.getpostman.com/collections/<COLLECTION-ID-HERE>
运行 在 windows 上,我们有一个企业代理服务器 (ZScaler)。
如何让新人上班?
问题是 newman 找不到(或不知道)在 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 变量设置代理服务器 url 本身。
或者,可以使用 build parameters feature of Teamcity
将环境变量添加到 teamcity 构建运行时环境
注意这是针对 Node.js 7.3.0 及更高版本(以及 LTS 版本 6.10.0 和 4.8.0)
只需在 collectionID 前添加 --insecure 即:
newman 运行 https://www.getpostman.com/collections/?apiKey="your-Postman-Api-Key" --insecure
此外,当使用 json 文件触发执行时,只需添加 --insecure 所以您的命令应为:
newman 运行 .postman_collection.json --insecure
使用 newman nodeJS CLI 运行 邮递员测试集合我得到以下错误:
error: unable to get local issuer certificate
它是 运行 作为 Teamcity CI 使用以下命令构建的一部分:
newman run https://www.getpostman.com/collections/<COLLECTION-ID-HERE>
运行 在 windows 上,我们有一个企业代理服务器 (ZScaler)。
如何让新人上班?
问题是 newman 找不到(或不知道)在 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 变量设置代理服务器 url 本身。
或者,可以使用 build parameters feature of Teamcity
将环境变量添加到 teamcity 构建运行时环境注意这是针对 Node.js 7.3.0 及更高版本(以及 LTS 版本 6.10.0 和 4.8.0)
只需在 collectionID 前添加 --insecure 即:
newman 运行 https://www.getpostman.com/collections/?apiKey="your-Postman-Api-Key" --insecure
此外,当使用 json 文件触发执行时,只需添加 --insecure 所以您的命令应为:
newman 运行 .postman_collection.json --insecure