性能测试工具JMeter使用入门

张开发
2026/6/12 13:44:56 15 分钟阅读
性能测试工具JMeter使用入门
一、测试计划用来描述一个压力/性能测试脚本和场景设计的基本运行单元 使用JMeter进行测试的所有内容都是基于一个测试计划用户定义变量测试计划的基础配置不勾选各个线程组并行、随机执行勾选线程组按照前后顺序来执行独立运行每个线程组主线程组运行完成之后运行tearDown线程组函数测试模式比如保存响应数据或者样本数据需要注意的是选择该功能非常耗磁盘空间添加文件或者jar包常用于外部功能调用二、线程组线程组元件是任何一个测试计划的开始点在一个测试计划中的所有元件都必须在某个线程组下所有的任务都是基于线程组。第一部分在请求取样器执行错误时需要执行的下一步动作Continue继续执行接下来的操作Start Next Loop忽略错误执行下一个循环Stop Thread退出该线程不再进行此线程的任何操作Stop Test等待当前执行的采样器结束后结束整个测试Stop Test Now直接停止整个测试第二部分线程属性Number of Thread (users)线程数模拟的用户数量Ramp-up Periodin seconds达到指定线程数所需要的时间。举例线程数设置为50此处设置为5那么每秒启动的线程数 线程数50/5 10Loop Count: 循环次数Same user on each iteration每次迭代都用相同的用户 勾选该选项则不同次迭代之间是串行执行不勾选则为并行执行。Delay Thread creation until needed当线程需要执行的时候才会被创建。如果不选择这个选项那么在计划开始的时候所有需要的线程就都被创建好了Specify Thread lifetime定义线程调度时间Duration (seconds) 持续时间秒, 在此选项填入N说明这个计划从某个开始时间算起执行N秒后结束。会忽略 结束时间 的选项Startup delay (seconds) 启动延迟秒在此选项填入N手动点击开始执行计划然后延迟N秒后计划才真正开始执行。三、控制器种类丰富为请求执行提供不同的逻辑控制常用的逻辑控制器事务控制器 Transaction Controller条件控制器 If Controller循环控制器 Loop Controller随机控制器 Random Controller四、采样器 / 取样器采样器取样器 模拟用户操作向服务器发出请求的组件采样器作用向服务器发送请求记录响应信息与响应时间常用采样器HTTP Request SamplerDebug SamplerBeanShell Sampler五、JMeter 场景逻辑控制技术场景逻辑控制技术利用JMeter 逻辑控制器实现测试业务流程中的逻辑变化模拟实际业务场景六、监听器定义用来动态的监控JMeter执行测试的过程实时查看测试结果常用监听器查看结果树聚合报告后端监听器七、定时器定义定时器是用来控制采样器发出请求开始时间的组件固定定时器发出请求前等待的时间高斯随机定时器两个请求等待的时间在给的时间范围内随机等待时间不固定吞吐量定时器控制对应的吞吐量如1秒钟1个流量并发定时器控制同步发起请求直播1、 JMeter介绍2、 JMeter安装3、 JMeter启动提示# 不要使用GUI模式进行负载测试 GUI模式只是压测脚本的创建和调试 Dont use GUI mode for load testing !, only for Test creation and Test debugging. # 如果想要进行负载测试 使用CLI模式 即非GUI模式 -- 静默压测会详细介绍 For load testing, use CLI Mode (was NON GUI): jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder] # 可以增加Java的堆来满足压测需求 increase Java Heap to meet your test requirements: # 修改JMeter文件的Java堆变量 Modify current env variable HEAP-Xms1g -Xmx1g -XX:MaxMetaspaceSize256m in the jmeter batch file4、压测脚本四要素5、 用户定义的变量6、 线程组件默认值是指匹配不到时给一个默认值7、 jmeter中文显示问题的解决​​​​​​* 解决乱码问题 - 在jmeter_home/bin/jmeter.properties配置文件中设置 sampleresult.default.encodingutf-8 * 解决Unicode 显示成可读中文的问题 - 将 ijmeter_proj/unicode2utf8/unicode2utf8.js 内容复制粘贴到 BeanShell PostProcessor 中最后下方这份完整的软件测试 视频教程已经整理上传完成需要的朋友们可以自行领取【保证100%免费】​​​软件测试面试文档我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。

更多文章