Apache JMeter HTTP(S) 测试脚本录制完整指南
创作时间:
作者:
@小白创作中心
Apache JMeter HTTP(S) 测试脚本录制完整指南
引用
1
来源
1.
https://jmeter.net/usermanual/jmeter_proxy_step_by_step.html
Apache JMeter HTTP(S) 测试脚本记录器
本教程将详细解释如何使用Apache JMeter进行HTTP/HTTPS测试脚本的录制。对于JMeter新手来说,使用Recorder创建测试计划是一种简单有效的方法。
JMeter 配置
自JMeter 2.10版本起,记录功能得到了改进,更好地处理了嵌入式资源和动态证书的创建。要启用这些新功能,需要确保系统中已正确配置了keytool实用程序(通常在JRE/JDK中提供)。在开始之前,请确保阅读相关Wiki页面以了解详细配置要求。
基本说明
- 转到JMETER_HOME/bin目录,使用Windows上的jmeterw.bat或Linux/Unix上的jmeter.sh启动JMeter。
- 在菜单栏中选择"模板..."选项。
- 在列表中选择"录制模板"。
- 生成完整的测试计划。
在"HTTP请求默认值"元素中进行如下设置:
- 服务器名称或IP:输入example.com
- 路径:留空
返回"HTTP(S) Test Script Recorder",点击顶部的"开始"按钮。这将启动用于拦截浏览器请求的JMeter代理服务器。在JMETER_HOME/bin文件夹中会生成一个名为"ApacheJMeterTemporaryRootCA.crt"的证书文件。需要在浏览器中安装此证书,具体操作可参考"安装 JMeter CA 证书以进行 HTTPS 录制"的说明。
配置浏览器以使用 JMeter 代理
- 启动Iceweasel/Firefox浏览器,但不要关闭JMeter。
- 在工具栏中点击"选项"(或直接在地址栏输入about:preferences#advanced),进入高级设置页面。
- 选择"高级"选项卡和"网络"选项卡。
- 点击"设置"按钮。
- 在弹出窗口中,勾选"手动代理配置"。此时将启用地址和端口字段。
- 地址:输入localhost或系统的IP地址
- 端口:输入8888
- 勾选"对所有协议使用此代理服务器"。
- 点击"确定"按钮保存设置。
记录你的导航
- 使用浏览器,在地址栏中输入http://example.com/index.html(将example.com替换为你的目标网站地址),并按回车键。
- 在网站页面上点击几个链接进行浏览。
- 关闭浏览器并返回JMeter窗口。
- 展开"线程组",应该能看到几个采样器。此时,测试计划已经基本完成,可以保存。
如果在录制前没有添加默认的HTTP请求设置,需要手动删除服务器名称和端口。在此示例中,没有设置任何默认请求参数。如果所有页面都需要特定的请求参数,可以在"请求默认值"中添加相应条目。
进一步优化测试计划:
- 选择"线程组"并更改以下默认值:
- 线程数(用户):输入5
- 加速期(以秒为单位):保持不变
- 循环计数:输入100
验证脚本
在运行测试计划之前,需要验证脚本的正确性。保存测试计划后,右键点击"线程组",如果一切正常,应该能看到"查看结果树"元素。
变量化和关联脚本
在某些情况下,可能需要对脚本进行变量化和关联处理:
- 变量化:可以使用CSV数据集配置从CSV文件获取输入数据,或使用JMeter函数如__counter、__time等。
- 关联:可以使用JSON Extractor、Regular Expression Extractor等后处理器从请求中提取数据,并将其注入到另一个请求中。
要查找需要关联的数据,最简单的方法是使用"查看结果树"中的搜索功能。
开始测试
现在,测试计划已经准备就绪,可以开始进行实际的性能测试了。有两种运行方式:
- 使用GUI界面(仅建议在调试阶段使用)
- 使用命令行(推荐用于大规模负载测试)
使用GUI界面
- 在JMeter界面中,可以直接点击"运行"按钮,或使用快捷键Ctrl + R。
- 在开始测试前,添加一个"总结报告"元素并选择它。随着测试的进行,统计数据将实时更新,直到测试完成。
- 测试运行时,右上角会显示一个绿色圆圈。测试完成后,圆圈将变为灰色。
使用命令行
使用命令行运行测试的命令格式如下:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to output folder]
测试完成后,将在指定的输出目录中生成HTML报告。
热门推荐
公积金提取借款合同必备:如何妥善签订与履行?
如何初始化RAID
离婚后一方不配合户口迁移怎么办
引发网友围观吐槽,《更衣人偶》真人版这下玩砸了?
如何准确判断和选择期货投资品种?这种投资的风险和机遇如何评估?
银行不同期限定期存款利率差异分析
天量天价:股市中的重要技术分析概念
历史上项羽的军事才能怎么样?从哪里可以看出来?
直播知识进阶:如何优化直播内容
十二星座最受欢迎排名
自动泊车系统是否可以通过手机进行控制?
【超详细】Claude MCP 大模型上下文协议全面介绍(架构、协议、优缺点)
铜型材的电阻率受哪些因素影响?
如何防止"仙人跳"?掌握这几个要点,再狡猾的招数也能轻松识破
揭秘"仙人跳":如何防范这种网络骗局?
大六壬排盘如何判断?大六壬判断方法
牙周炎患者的饮食指南
小额诉讼举证:如何有效应对?
手机无线充电新规出台:安卓阵营迎机遇,苹果面临调整
H36M (Human3.6M)数据集:人体运动分析的基石
用什么方式进行黄金投资?这些投资方式的优缺点是什么?
如何通过二手黄金趋势图分析市场趋势?这些趋势如何帮助投资者做出决策?
古龙笔下八大剑神都有谁?叶孤城仅排第五,第一第二都姓燕
行政处罚记录影响考公务员吗
“十善”、“十恶”?各指什么,不可不知
学校里的“含AI量”越来越高 人工智能如何助力教学?
为什么有人长智齿有人却不长?雷电喜欢选择哪些人?什么金属见不得光?
以房抵债受让人优先受偿权问题辨析
破产费用和共益债务清偿顺序是怎样的
紫砂壶泥料:科普系列之'朱泥“和“红泥”的区别