JMETER基本原理

Jmeter基本原理是建立一个线程池,多线程运行取样器产生大量负载,在运行过程中通过断言来验证结果的正确性,可以通过监听来记录测试结果;

JMETER是运行在JVM虚拟机上的, 每个进程的开销比loadrunner的进程开销大,如果以进程的方式来运行每台负载机上的进程数量不会允许太多,当有大量并发时就需要大量的负载机,jmeter选择了以线程方式来运行。jmeter通过线程组来驱动多个线程运行测试脚本对被测服务器发起负载,每一个负载机上都可以运行多个线程组。 jemter运行场景不仅可以再gui方式中完成,还可以运行命令行,而且命令行的运行方式对于负载机的资源消耗会更小。Jmeter基本原理是建立一个线程池,多线程运行取样器产生大量负载,在运行过程中通过断言来验证结果的正确性,可以通过监听来记录测试结果;

  如果取样器中有参数化需求,可以通过配置元件或者前置处理器来完成;

  如果取样器中有关联需求,可以通过后置处理器来完成;

  如果要模拟负载场景,比如模拟多少用户,运动多长时间,可以通过线程组完成;

  如果要模拟并发场景,可以通过定时器来完成;

  如果要控制业务的执行逻辑,比如登录只运行一次,可以通过控制器来完成;

  一:jmeter远程运行,远程运行架构图

  1:控制机

  运行多台jmeter负载机进行性能测试时,被选中作为管理机的那台机器就是控制机。控制机也可以参与脚本的运行,同时它也担负管理远程负载机指挥远程负载机运行工作,且收集远程负载机运行测试结果。

  2:负载机

  负载机就是向被测应用服务发起负载(请求)的机器。控制机同时也是一台负载机。jmeter负载机受控制机(jmeter负载机)的管理。与支持其他远程运行的测试工具一样,负载机受控制机管理首先要启动一个客户端程序(Agent:jmeter-server.bat),这样控制机才可以接管负载机。控制机会把运行的脚本隐蔽的发送到远程负载机,但是运行的测试脚本有参数文件或者依赖jar包时,控制机并不能把他们发送到远程负载机,这种情况就需要手动拷贝,也可以用工具实现自动拷贝。

  3:远程运行逻辑

  远程负载机首先启动agent程序,待控制机连接;控制机连接上远程负载机;控制机发送指令(脚本及启动命令)启动线程;负载机运行脚本,回传状态(包括测试结果);控制机收集结果并显示

相关推荐
PhotonixBay11 小时前
增材制造表面粗糙度测量:3D共聚焦多尺度方法
功能测试·测试工具·共聚焦显微镜·增材制造·测试标准
硬禾科技1 天前
连接世界的工程哲学
嵌入式硬件·测试工具·自动化·硬件工程
wuhuhuan1 天前
Case Generator 平台升级
python·测试工具·自动化
柒儿吖2 天前
SSCom 重构全记录:用 Rust 把串口调试助手送上鸿蒙 PC、macOS、Windows和Linux
测试工具·rust·harmonyos
AngusKit2 天前
AngusTester 与 Postman、MeterSphere:私有化统一测试怎么选
测试工具·jmeter·压力测试·metersphere·web测试·移动端测试
蒲公英内测分发2 天前
App 更新一次就换一个二维码?智能硬件配套 App 的版本和下载入口怎么管理
人工智能·测试工具·智能家居·智能硬件
测试老哥2 天前
接口测试的测试用例应该怎么写?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
是Leo刘啊2 天前
别再手敲 JSON 造数据了!Mock 数据生成器实战与避坑指南
测试工具
Luminbox紫创测控2 天前
航天热平衡试验用太阳模拟器:光学积分器设计与均匀性提升方法
测试工具·安全性测试·太阳光模拟器·测试标准·航天热平衡实验
程序员杰哥3 天前
UI自动化测试:Jenkins配置
自动化测试·软件测试·python·测试工具·职场和发展·jenkins·测试用例