使用 Postman REST/RESTFUL 工具进行负载测试
Posted
技术标签:
【中文标题】使用 Postman REST/RESTFUL 工具进行负载测试【英文标题】:Load testing with Postman REST/RESTFUL tool 【发布时间】:2016-07-18 08:22:13 【问题描述】:我已将 Postman 插件添加到 Chrome 浏览器中,用于对我的 API 进行负载测试。
但我对如何使用 Postman 工具进行负载测试一无所知。
我的疑问是如何在这个工具中模拟“虚拟用户”?
【问题讨论】:
【参考方案1】:我认为您无法使用 Chrome 扩展程序进行负载测试,请考虑使用更专业的工具,例如 SoapUI 或 Apache JMeter
参考资料:
Using SoapUI for load testing Testing SOAP/REST Web Services Using JMeterSoapUI 是为测试 Web 服务而设计的,负载测试是次要选项,而 JMeter 是为负载测试而设计的,没有任何特定于 Web 服务的功能,但是如果我不得不选择,我会选择 JMeter,因为它可以产生更多巨大的负载并具有更好的报告功能。
【讨论】:
你也可以单独使用locust.io作为api【参考方案2】:它存在一个转换器来从 Postman 集合生成 k6 负载测试。
https://github.com/apideck-libraries/postman-to-k6
npm install -g @apideck/postman-to-k6
postman-to-k6 collection.json -o k6-script.js
k6 run --vus 100 --duration 3m k6-script.js
欲了解更多信息,请查看以下文章Load Testing Your API with Postman
【讨论】:
我用一个 pm.test() 断言将一个非常简单的邮递员请求转换为 k6 脚本。我永远无法让它通过。它在邮递员中可以通过,但在我转换它并使用 k6 运行之后就不行了。我在 k6 问题论坛上发布了问题:github.com/k6io/postman-to-k6/issues/107 k6 转换后的邮递员测试似乎需要一个接一个地解决。在这一点上,postman 到 k6 的转换并不是一个真正可行的选择。【参考方案3】:Postman 有一个 Collection Runner
,可用于通过多次迭代进行 API 调用。
如果你能弄清楚如何让它并行运行请求,你也许可以将它用于负载测试。
【讨论】:
【参考方案4】:您可以在 Postman 中打开多个 Collection Runner 窗口来运行并行集合。
一次又一次地点击运行。您将打开新的收藏窗口。一个一个地开始每个集合,它们都将开始运行。
【讨论】:
你能再解释一下吗?你怎么打开那些窗户?请通过编辑您的答案进行详细说明。 一次又一次地点击运行。您将打开新的收藏窗口。一个一个地开始每个集合,它们都将开始运行。 i.stack.imgur.com/K1qSf.png【参考方案5】:您好,我建议您使用 Jmeter 进行负载测试,它是专为它设计的。但是有些人发现使用 postman 更容易,因为它已经在其中创建了集合,并且界面更加友好。
第 1 步 - 单击收藏列表中的小箭头以及您的收藏
第 2 步- 然后单击“运行”按钮以启动 Collection runner
Collection runner 是用于负载测试的部分
第 3 步 - Collection runner 有很多重要的部分需要考虑进行负载测试
截图中有解释每个部分的计数
是迭代次数还是用户数
是加速时间还是用户会打或来的频率
用于记录请求
本次测试完成日期选择
用于运行测试
所有 Api 集合
所有 API 列表
环境选择
运行后会显示所需的结果,并且我已经编辑了隐私信息
【讨论】:
感谢您提供详细的解释。 "iterations" 听起来要重复测试多少次? ``` 集合运行的迭代次数。您还可以针对不同的数据集多次运行集合以构建工作流。每个请求之间的间隔延迟(毫秒)。 ```learning.postman.com/docs/running-collections/…【参考方案6】:简而言之,没有办法直接通过 Postman 进行负载测试。您可以使用不同的工具,例如 Jmeter 和 SOAP UI 等。
【讨论】:
【参考方案7】:您无法使用 Postman 执行负载测试,但您可以使用 newman 实用程序(与 jq 程序结合使用特别有用)调整您在 postman 集合中实现的测试套件以适应负载测试工具。
【讨论】:
以上是关于使用 Postman REST/RESTFUL 工具进行负载测试的主要内容,如果未能解决你的问题,请参考以下文章