最近正在学 JMeter 的一些使用,这个会写一个系列文和 python 差不多, 算是边学边记录吧。
好的, 黑喂狗。
0 准备工作
因为是录制 HTTP 协议,需要 WEB, 所以在虚拟机上简单搭建了一个 WEB 端。用的是 JForum 这个开源论坛,配置如下
Tomcat 8.0
JForum 2.2.0
MySQL5.6.11
jdk1.8
搭建好后如图所示
以在论坛上登录并发帖为例。
1 录制 HTTP
我使用的 BadBoy 这个工具进行录制的, JMeter 本身自带的工具录制起来没有直接使用 BadBoy 录制起来方便。输入 WEB 地址之后,然后回车 就会自动开始录制。只需要在右边的浏览器中进行正常操作即可。
在录入的时候, 有时候业务流程比较长, 可以将一个业务分成几个步骤进行, 这样做的好处就是在使用 JMeter 运行脚本时, 可以单独将某部分业务多运行几次
就拿这次的业务举例子, 登录论坛并发帖, 发帖这个业务可以进行多次, 而登录可能只需要一次, 这时候就可以把登录这部分和发帖这部分的业务分在不同的步骤里。
录制完成之后, 在 File 下面可以将脚本导出到 JMeter。这样就算录制 HTTP 协议成功了。
2 脚本回放
在录制完成并把脚本导出后, 在 JMeter 中可以将脚本导入。
导入结果如图所示, 在导入完成后可以看到, JMeter 就是用刚才我们添加的步骤来区分业务的, BadBoy 中的每个步骤在 Jmeter 中对应的是一个循环控制器组件, 我们可以通过修改循环控制器组件中的循环次数, 达到多次执行某部分业务的目的。
之后运行, 即可回放脚本。
登录论坛会发现, 确实回放了脚本, 而且也发帖了。但是会发现, 帖子是乱码的。
这是一个编码问题导致的, 打开 JMeter 脚本中的倒数第二个组件, 这个组件就是用来记录发帖的请求。会发现请求的内容就是乱码的, 将乱码内容修改,并将 HTTP 请求的内容编码修改为 UTF-8 即可。
领取专属 10元无门槛券
私享最新 技术干货