第一步—准备工作
一、Jmeter分布式执行原理:
1、Jmeter分布式测试时,选择其中一台作为控制机(Controller)(209),其它机器做为代理机(Agent)(210/211/212……)。代理机和控制器要在同一网段下(重要、重要、重要)
2、执行时,Controller会把脚本发送到每台Agent上,Agent 拿到脚本后开始执行,Agent执行时不需要启动Jmeter,但需要把代理机的jmeter-server.bat文件打开,它是通过命令行模式来执行的。非GUI模式下通过jmeter-server启动
3、执行后,Agent会把结果回传给Controller,Controller会收集所有Agent的信息并汇总。
注:录制的脚本只需在控制机上保存,参数化的账号每台代理机都需存在,包括控制机
二、代理机(Agent)配置:
1、Agent机上需要安装JDK、Jmeter,并且配置好环境变量。(推荐使用jdk1.8和jmeter5.2)
2、打开“运行”,输入”cmd”,打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.31.230
3、打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.31.230:1099,1099是端口号,可以随意自定义,可不做修改。
注:代理机的server-port 端口需解除注释,并且端口号保持一致
4、打开jmeter-server.bat文件,就设置完成了,等待控制机(Controller)启动。非GUI模式下通过jmeter-server 启动
三、控制机(Controller)配置:
1、Controller机上需要安装JDK、Jmeter,并且配置好环境变量。安装火狐浏览器(火狐浏览器设置代理个人感觉最简单方便)
2、打开“运行”,输入”cmd”,打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.31.135
3、打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.31.135:1099,192.168.31.230:1099,1099是端口号,可以随意自定义,可不做修改。如果有多台代理机,这里需要把所有的代理机的IP地址和端口号都加入进来。
注:控制机的server-port 端口需解除注释,并且端口号保持一致
4、打开jmeter-server.bat文件,设置完成了。
三、需注意
1、控制机(Controller)和代理机(Agent)在bin/jmeter.properties中设置的端口要一致,控制机要包含所有代理机地址,用英文状态下的逗号隔开
2、创建控制机jmeter.bat的快捷方式至桌面,方便后期快速使用jmeter、建议jmeter解压后放在磁盘的全英文目录下,(最好放桌面)如:
3、双击控制机jmeter.bat,出现以下界面,则jmeter安装成功,并已打开
4、代理机在非GUI模式下通过jmeter-server启动,控制机则需双击jmeter.bat,打开jmeter软件窗口和dos窗口
相关配置修改:jmeter.properties
jmeter.properties文件中 server.rmi.ssl.disable 属性改为true,添加下列语句至配置文件中
jmeter.save.saveservice.output_format=csv
jmeter.save.saveservice.bytes=true
jmeter.save.saveservice.label=true
jmeter.save.saveservice.latency=true
jmeter.save.saveservice.response_code=true
jmeter.save.saveservice.response_message=true
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_counts=true
jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true
jmeter.save.saveservice.timestamp_format=ms
jmeter.save.saveservice.timestamp_format=yyyy-MM-dd HH:mm:ss
jmeter.save.saveservice.print_field_names=true
运行语句:
jmeter -n -t C:/Users/Administrator/Desktop/登陆2.jmx -r -l ceshi.jtl 压测并生成jtl文件
jmeter -g ceshi.jtl -e -o C:\Users\Administrator\Desktop\baogao 将jtl转化为html
1、 C:/Users/Administrator/Desktop/登陆2.jmx——-脚本所在路径及脚本
2、 ceshi.jtl——生成的jtl文件名(默认生成在bin目录下)
3、 C:\Users\Administrator\Desktop\baogao—–转化的html存放路径
第二步——录制并调试脚本,以登录和首页加载为例(PC)
登录和首页加载
a—脚本录制
打开jmeter,选择文件—模板—–Recording—creat——creat (此处注意https和http)
打开需要录制的环境登录页,设置好http代理参数,不点确定,等待jmeter脚本的录制启动
删掉红框内容,点击启动,进行录制,启动录制后点击代理确定,回到环境登录页,输入账号密码,进行登录,进入环境后门户加载完毕,结束录制
b——–调试脚本
登录和首页加载,高并发下需要对账号做参数化,谨防数据库死锁,需要添加csv文件配置
将准备好的账号写入txt文件,一行一个账号,放在桌面方便寻找,(若账号密码各不相同,则需在账号后加 , 并写上对应密码,推荐使用相同密码的账号)
csv文件配置中填入相关信息,文件名、文件编码、变量参数,其他默认
获取token——新建线程组,将登录接口复制粘贴至新建的线程组中(通过登录获取token值,一般用于token时效较短的场景,可以通过增加token时效或动态获取token,保存脚本正常运行)
修改获取token线程组中的登录接口的接口名,与登录线程组的登录接口做区分,并在接口上添加json提取器,在线程组上添加Beanshell取样器,该线程组并发时间等设置不变,都为1
将登录接口的账号参数修改为${name},保持和csv中设置的name参数一致
修改登录事务并发数和并发时间,讲信息头的token修改为动态获取的token,(可以设置定时器增加thinktime,也可以设置Ramp-UP时间)保存jmx脚本。
录制并调试脚本,以登录和首页加载为例(移动端)
1、 打开jmeter,创建模板,删除和添加相应配件(与PC端创建模板相同)
2、 查找电脑ip地址,将电脑和手机连接至同一网段下,例如,连接同一个wifi,或电脑连接wifi后开启wifi共享并将手机连接共享的wifi
3、 手机上打开APP至登录页,输入账号密码,不登录,在PC端点击jmeter的Http代理服务器页面的“启动”,在弹出的对话框中点击“确定”,录制已经开始
4、 找到并长按连接的wifi,点击“修改网络”,在打开的页面中将“显示高级选项”勾选上,将“代理”选为手动,在服务器主机名中填入刚刚查看的电脑网址,点击保存
5、 切回登录页,点击登录按钮,进入APP登录后的门户首页,PC端在jmeter中点击停止
注:用户参数化方式与PC端一致
C——-开始压测
Dos窗口中进入jmeter的bin目录,输入压测语句
jmeter -n -t C:/Users/Administrator/Desktop/登陆2.jmx -r -l ceshi.jtl 压测并生成jtl文件
jmeter -g ceshi.jtl -e -o C:\Users\Administrator\Desktop\baogao 将jtl转化为html
,压测结束后转化成html,压测结束,按照模板整理压测报告
今天的文章jmeter用法_jmeter支持吗分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/53616.html