我已经在Chrome浏览器中添加了Postman插件来进行API的负载测试。
但是,我不知道如何使用Postman工具进行负载测试。
我的问题是如何在这个工具中模拟"虚拟用户"?
我已经在Chrome浏览器中添加了Postman插件来进行API的负载测试。
但是,我不知道如何使用Postman工具进行负载测试。
我的问题是如何在这个工具中模拟"虚拟用户"?
有一个转换器可以从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
如需更多信息,请查看以下文章使用 Postman 对您的 API 进行负载测试
我认为你不能使用Chrome扩展来进行负载测试,考虑使用更专业的工具,例如SoapUI或Apache JMeter。
参考资料:
SoapUI专门设计用于测试Web服务,而负载测试是其次要选项。JMeter专门设计用于负载测试,并没有任何Web服务特定功能。但如果我必须做出选择,我会选择JMeter,因为它可以产生更大的负载并具有更好的报告功能。
由BlazeMeter提供的Taurus开源项目可能会成为未来的选择。他们目前还不支持多个实例。 https://gettaurus.org/docs/Postman/
如果您可以从服务器端测量API性能,并且拥有一台大型机器,则可以在Postman客户端中启动多个Postman Runner。将迭代设置为非常大的数字,然后单击“开始”。然后返回集合页面,再次点击“运行”以打开新的Runner页面。重复此过程,直到达到目标容量。
或者,您可以使用PowerShell多次运行Newman命令。
# Start 5 newman run of 10 iterations
for($i = 0; $i -lt 5; $i++)
{
Start-Job -Scriptblock {
newman run "./postman_collection.json" --environment "environment.json" --iteration-count 10 --disable-unicode --silent --suppress-exit-code
}
}
# Wait for all to complete
While (Get-Job -State "Running") { Start-Sleep 2 }
# Display output from all jobs
Get-Job | Receive-Job
# Cleanup
Remove-Job *