使用Jmeter代理录制web系统脚本详解

​目录使用Jmeter代理录制脚本是我们在做性能测试的时候,经常会用到的一种方式,毕竟像Badboy这种小工具在使用的时候,会有很多限制,以至于很多项目没法录制,而代理录制基本上可以满足我们所有的需求。

一、WebTours案例安装

本文采用性能测试最常用的WebTours飞机订票系统作为案例系统,进行脚本录制,首先就是安装这个案例系统,下载地址:

https://marketplace.microfocus.com/appdelivery/content/web-tours-sample-application

1、安装strawberry-perl

击strawberry-perl-5.10.1.0.msi运行安装,按照提示信息安装到默认文件夹即可。

需要注意的是:安装Strawberry Perl会默认添加C:\ strawberry\perl\bin到环境变量PATH中,这是Web Tours正常运行所必需的。

2、安装webtours

将WebTours.zip解压到指定文件夹,比如:C:\WebTours即可。

3、启动服务

切换到Web Tours的安装目录,运行StartServer.bat文件(或者管理员权限启动),命令行窗口中就启动了Web Tours服务,注意访问过程中不要将此窗口关闭。

4、浏览器登录

启动浏览器输入网址::1080/WebTours/,出现以下窗口说明启动成功。

二、Jmeter代理录制脚本

1、Jmeter中设置

jmeter中在测试计划下依次加入如下组件:

HTTP Cookie管理器(配置元件)线程组(线程、用户)HTTP代理服务器(非测试元件)

2、HTTP代理服务器设置

3、手动代理设置

打开Chrome浏览器->设置->高级->系统->打开你计算机的代理设置,启动代理服务器,并设置地址和端口,保存即可。

如果是无线网络,上图地址填入无线局域网适配器的IPv4地址,通过ipconfig命令获取。如果是有线网络,上图地址填入以太网适配器的IPV4地址,通过IP从fig命令获取。

4、启动Jmeter代理服务

启动Jmeter中的HTTP代理,会弹出整数安装提示,点击确定即可

5、录制脚本

在浏览器中进行被试系统webtours的操作即可,此处我们录制登录功能(账号jojo,密码bean),对应的操作脚本会记录在Jmeter中。

注意(切记):访问地址的ip部分必须和浏览器的手动代理服务地址一致。

即你的手动代理地址是:192.168.0.100则系统访问地址为::1080/WebTours/index.htm

6、过滤请求

如果录制的脚本中请求不是被测系统相关的,可以直接删除。如果录制的脚本中请求中包括gif、png、ico等图片类的情况,可以设置过滤,精简脚本。

四、对脚本的二次开发

1、添加关联

在“/WebTours/nav.pl”请求下右击,选择现场组—添加--后置处理器--正则表达式提取器,正则表达式提取器的设置如下图显示:

2、添加事务控制器

在性能测试中,事务可以看作是一系列实现共同功能的请求的集合,我们考虑性能指标时候可以针对事务进行评价。

线程组->添加->逻辑控制器->事务控制器。

3、同步点定时器(集合点)

为了实现绝对的并发效果,我们可以在脚本中添加同步点定时器,并设置释放线程的策略。

4、用户名的参数化

参数化方式:线程组—>添加—>配置元件 –>csv数据文件设置

单击"",完成参数化

5、添加监听器(Listener)

  Jmeter 中使用监听器元件收集取样器记录的数据并以可视化的方式来呈现。Jmeter有各种不同的监听器类型,因为上HTTP请求,我们可在添加聚合报告,更为直观的查看测试结果。右键点击Step1,在弹的菜单(添加--->监听器--->聚合报告)中选择聚合报告。

五、录制注意事项

1、为了使得脚本更简洁,可以添加HTTP请求默认值

2、如果在录制脚本时候未添加HTTP Cookie管理器,该案例获得usersession值是不正确的,可以后续添加上即可。

六、代理录制APP的脚本

见文章:

捉虫布道人:【Jmeter】使用Jmeter手机代理录制脚本8 赞同 · 0 评论文章

欢迎关注作者,如果觉得写的还不错,就给点个赞同、喜欢、收藏(后续持续更新)。

【全文手打 如需转载 请标注此出处】