JMeter之代理服务器录制脚本

在JMeter中可以使用自身就带的HTTP代理服务器组件录制脚本,可以录制在WEB上的操作,也可以录制在手机App上的操作。

1、测试计划内包含的元件

  添加元件操作步骤:

  创建测试计划

  创建线程组:选中“测试计划”右键 —> 添加 —> 线程(用户) —> 线程组。

  在线程组中,添加配置原件“HTTP Cookie管理器”组件:选中“线程组”右键 —> 添加 —> 配置元件 —> HTTP Cookie管理器。

  说明:如果录制的操作包括用户登录操作,则需要添加“HTTP Cookie管理器”,添加之后不需要任何配置,录制后,脚本中便保存用户登录的相关信息。

  在测试计划下,添加非测试元件“HTTP代理服务器”组件:选中“测试计划”右键 —> 添加 —> 非测试元件 —> HTTP代理服务器。

  在HTTP代理服务器组件下,添加监听器“察看结果树”组件:选中“HTTP代理服务器”右键 —> 添加 —> 监听器 —> 察看结果树。

  最终测试计划中的元件如下:

点击运行按钮,会提示你先保存该脚本,脚本保存完成后会直接自动运行该脚本。

2、HTTP代理服务器的设置内容

  在HTTP代理服务器组件中,我们需要编辑:

  端口:默认8888,一般使用默认即可。主要不能与本地其他服务的端口号冲突,否则启动不了。

  HTTPS Domains:我的理解就是,设置代理服务器的主机IP地址或者域名。因为在我们本地使用,一般就是localhost或者127.0.0.1即可,当然不填写也是可以的。(此填写的地址一定要能够连接外网)

  设置目标控制器:也就是录制的组件存储到什么位置。这个一定要选,下图中选择了存储到目标线程组中。

  配置完的界面内容,如上图所示。

3、设置浏览器的代理服务器

  每个浏览器都可以设置服务器的代理,以Chrome浏览器为例。【设置需要区分是否为局域网】

  点击右上角的设置 —> 高级 —> 系统 —> 最下面的‘’打开您计算机的代理设置‘’,点击右侧图标,就可以进入到代理服务器的设置页面了。

  选要选中手动配置代理服务器,然后输入代理服务器的地址或者域名,还有端口号。

  这里的配置,要和上面JMeter的HTTP代理服务器中的端口和HTTPS Domains的配置要对应上。

  这样的话,浏览器中的操作,会先发送到JMeter中的HTTP代理服务器,在通过网络进行传输。这样JMeter中就可以录制下我们的操作,生成脚本了。

  如下图所示:

chrome
IE
IE

4、录制脚本

  以上内容设置完毕后,在浏览器地址栏中输入要录制脚本的地址。

  然后在JMeter中的HTTP代理服务器界面,点击启动按钮。

  提示:在HTTP代理服务器界面点击“启动”时,Meter将生成自己的证书。证书生成可能需要一些时间,在此期间,GUI将无响应。证书生成完成后,GUI将显示一个弹出对话框,其中包含根CA证书的详细信息,证书有效期为7天。该证书需要由浏览器安装,以便接受JMeter生成的主机证书。

  如下图所示:

  浏览器配置证书: 浏览器中导入证书,jmeter安装目录下的ApacheJMeterTemporaryRootCA.crt

        之后开始在网站上进行操作,所有操作发出的请求,都会录制到JMeter脚本中。

  操作完成之后,到JMeter的HTTP代理服务器中点击“停止”,然后将浏览器的代理设置恢复原样即可。

  不恢复的话,会导致你无法使用浏览器访问外网。

  如下图所示:【录制时弹出的控制器,不用进行设置,关闭时 点击 停止 即可】

  5、查看录制的脚本

在JMeter中我们可以看到已经记录了许多请求对应的信息,包括PHP、js、.jpg、.png、.txt等请求。

  如下图所示:

  我们可以看到,我们只进行了简单的几步操作,却录制这么的请求。是因为JMeter录制很多非关键性的请求,这就需要我们进行一些优化。

  录制脚本的优化有两个步骤:

  在录制的时候,做一些过滤和排除操作。

  在录制后的脚本中手动优化,删除不需要的组件,增加自己需要的组件。

  1)服务器名称或IP与目标网站不同的、无关的,可以删除。

  2)js/css/png/jpeg等这类请求删掉。

  3)没有传递任何数据的请求可以屏蔽掉,等流程能回放成功了,这些再删除。如果回放不成功,再一个一个打开,进行检查。

6、HTTP代理服务器的排除模式

  在测试脚本中有一些录制的信息是没有任何作用的,所以我们在录制脚本的时候,就可以通过HTTP代理服务器的排除模式,排除一些不需要的请求信息,如css、gif、png等请求。

  例如:

  在包含模式添加填上 .*\.jsp,只在请求JSP文件时录制脚本。

  这里通常都是设置JSP或者HTML,可以根据具体情况进行填写。

  在排除模式处填上.*\.js ,在请求js文件时不录制脚本。

  这里通常都是设置js、jpg、png、gif、css等,这些类型文件请求都是不需要录制的。

  当然我们也可以点击添加建议排除按钮,会自动生成一个过滤的正则表达式。

  如下图所示:

  添加上这些时候,录制出来的脚本,多余的累赘会减少很多。

7、保存脚本

  脚本录制完成后,需要进行脚本的保存。

  把脚本保存到本地,可以分享给其他成员,进行查看、编辑、回放等操作。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,440评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,814评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,427评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,710评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,625评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,014评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,511评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,162评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,311评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,262评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,278评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,989评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,583评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,664评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,904评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,274评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,856评论 2 339

推荐阅读更多精彩内容