我有一个Postman集合,我试图让它与纽曼一起工作,但是我的环境变量没有被使用。
请求URL只是{{url}},然后我有一个同名的环境变量。我用这个命令运行我的测试:
newman run <path to collection> -e <path to env file> -r json --reporter-json-export <report path>
我可以在报告中看到环境文件被正确读取,并且包含我想要使用的变量,但是请求失败,报告显示请求是“url”:“https://{{url}}”而不是我真正想要的。
当然,请求失败是因为“https://{url}}”不是一个有效的URL,然后我所有的测试都失败了,因为请求失败了。当我直接从Postman运行集合时,这一切都工作得很好-我的请求会发送到我想要的服务器,并且我的测试会按预期通过。
3条答案
按热度按时间mzillmmw1#
我的URL的环境变量最初都使用格式 * subdomain1.domain.com *。只是为了好玩,我把请求中的URL改为 https://{{url}}.domain.com,并把环境变量改为只使用子域。然后我再次导出所有内容并运行纽曼,它起作用了。
不确定我是否偶然发现了纽曼的一个bug,或者URL中的环境变量使用没有正确记录,但至少我让我的设置工作了。
raogr8fs2#
有一个类似的错误消息,如
这有点奇怪,因为a在我的JSON中有环境变量,但我假设环境JSON格式只是键/值对,但它实际上应该是 Postman 格式,如:
vwkv1x7d3#
我有这个问题,因为我在Azure DevOps管道文件中有一个多行脚本,并且忘记了前面的一行中的
\
,即。缺少的
\
使--environment
无法生效(因为它认为命令已经结束)。这样做奏效了: