有什么区别
直接使用性能测试工具(Jmeter,..)
使用插件(Jmeter,..)将性能测试工具与硒集成。
我是否可以通过两种方式实现所有功能。
如果用作插件,会有什么限制吗?
谢谢。
答案 0 :(得分:0)
性能测试工具在HTTP协议级别上起作用,基本上与浏览器相同,但是特别是JMeter:
JMeter 不是浏览器,它可以在协议级别使用。就Web服务和远程服务而言,JMeter看起来像一个浏览器(或者说多个浏览器)。但是,JMeter不会执行浏览器支持的所有操作。特别是, JMeter不执行HTML页面中的Javascript。它也不会像浏览器一样呈现HTML页面(可以以HTML等形式查看响应,但是计时未包含在任何示例中,并且一次仅在一个线程中显示一个示例)。
因此,您只能使用JMeter测试backend的性能,但不会获得client-side performance metrics
基于协议的测试在资源(CPU,RAM等)方面的占用空间要小得多,因此您可以从中型现代笔记本电脑模拟成千上万的虚拟用户。
Selenium是一个浏览器自动化框架,它运行真实浏览器,因此:
基于浏览器的测试在资源方面具有巨大的足迹,因为浏览器非常消耗资源,例如,Firefox 74每个浏览器实例需要1个CPU内核和2 GB RAM,因此您可以在中型现代笔记本电脑上仅启动几种浏览器
根据您的要求,您可能要使用JMeter测试后端,或者使用Selenium来测试前端,或者使用JMeter创建主负载,并使用1-2个真实的浏览器来测试客户端性能。
如果您正在寻找将JMeter与Selenium集成的方法,请查看WebDriver Sampler(这是JMeter Plugin,可以使用JMeter Plugins Manager安装)