我正在使用jmeter进行性能测试
但是jmeter只接受JS调用,而不能传递类似URL的请求。
所以我的问题是我如何将jmeter用作普通浏览器
负载测试?
最佳答案
根据JMeter project main page:
JMeter不是浏览器,它可以在协议级别运行。就Web服务和远程服务而言,JMeter看起来像一个浏览器(或更确切地说,是多个浏览器)。但是,JMeter不会执行浏览器支持的所有操作。特别是,JMeter不会执行HTML页面中的Javascript。它也不会像浏览器那样呈现HTML页面(可以将响应查看为HTML等,但是计时未包含在任何示例中,并且一次仅在一个线程中显示一个示例)。
如果您有以下情况,可以使用configure JMeter to behave more like a real browser进行正常的HTTP requests:
告诉JMeter并行下载嵌入式资源(脚本,样式,字体,图像,声音等)
在处理上述嵌入式资源时,将HTTP Cache Manager添加到模拟浏览器缓存中
添加HTTP Cookie Manager代表浏览器cookie
添加HTTP Header Manager代表浏览器标题
JMeter不会自动启动由JavaScript触发的请求,因为它没有完整的JavaScript运行时,因此您必须为每个此类请求添加一个单独的HTTP Request采样器。如果您需要模拟几个AJAX请求-在浏览器同时执行AJAX请求时,考虑将它们放在Parallel Controller下
关于testing - 我如何将Jmeter用作普通浏览器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59191546/