上1篇介绍了"使用Jmeter对一个接口地址或者一个页面地址执行N次请求",也就是你自己干了一件从"零"开始的事情。

  那么这1篇介绍"如何使用Jmeter录制'访问一个接口地址或者一个页面地址'的脚本",有何用途呢?省事儿呗,因为不用从"零"开始了。但是这个方式虽然有利,但也会有弊,那么弊就是你需要对录制完成的脚本再做进一步优化。这么看来也挺费劲的,但是存在即合理,这项技能(录制脚本再执行测试)会比不会好。 

1.    运行Jmeter.bat

双击"Jmeter.bat"文件,稍等片刻后Jmeter会被启动,如下图所示:

2.    建立线程组

  在节点"测试计划"下,建立1个被称作"线程组"的东西,如下图所示:

  这个"线程组"的作用是什么呢?

  它的作用就是控制线程的数量。

  单击"线程组"之后,就算建立完成了。效果如下图所示:

3.    建立HTTP代理服务器

  在节点"工作台"下,建立1个被称作"HTTP代理服务器"的东西,如下图所示:

  单击"HTTP代理服务器"之后,就算建立完成了。效果如下图所示:

4.    填写"HTTP代理服务器"的表单

  "端口号"写:8080

  这里写"8080",那么接下来设置IE浏览器的端口号也需要写"8080"。该道理和设置Fiddler是一样的,因为我们是用Jmeter作为代理嘛。那么IE浏览器发出的请求,先经过Jmeter,然后再到Web服务器。所以IE浏览器和Jmeter的端口号一致,才能传递请求。

  至此,Jmeter的配置就算是搞定了!!

  那么既然是把Jmeter作为代理,所以需要配置一下浏览器(IE浏览器就可以了)。

5.    配置IE浏览器

  如下图所示:

  [1]    启动IE浏览器 --> Internet选项

  [2]    连接 --> "局域网设置"

  [3]    去掉选项"自动检测设置

  [4]    "勾选"代理服务器"下属的2个选项,地址写:"127.0.0.1",端口号写"8080"。(此处端口号 == Jmeter端口号)

6.    返回Jmeter启动测试计划

  单击"启动"这个按钮就可以了

7.    使用IE浏览器执行访问百度首页的动作

  我们录制一下"访问百度首页"的操作

  当"回车"后,可以观察到:

  [1]   IE浏览器内,访问"http://www.baidu.com/"成功了,页面正常展示

  [2]   Jmeter内,"线程组"这几个字左侧的节点的位置,已经出现了子节点的迹象。

  此时,停止jmeter脚本,然后查看"线程组"的子节点。

  从展开的结构中,可以看到既有访问"http://www.baidu.com/"的动作,也有一些"其它的东西"比如:.PNG的请求、.GIF的请求、.JS的请求、.ico的请求等等等等。

  那么为什么会有这些"其它的东西"呢?

  原因是:打开1个网页是需要浏览器发送很多次"请求"的!!

  [1]   当输入http://www.baidu.com/然后回车,浏览器首先只是发送了1个"请求",去获取http://www.baidu.com/上面的HTML。Web服务器把"响应"发送回给浏览器。

  [2]   浏览器开始分析"响应"中的HTML,发现其中引用了许多其它文件(也就是.PNG、.GIF、.JS、.ico等等等等)。

  [3]   浏览器会自动地再次发送"请求"去获取这些东西:.PNG、.GIF、.JS、.ico。

  [4]   直到全部的文件都下载成功了,"请求"的动作也就停止了,网页才算被显示出来。

  因此,既然我们只需要测试网址"http://www.baidu.com/"对用户请求的承载能力,那么只保留对"http://www.baidu.com/"的这1个请求就算完成任务了。

8.    修改录制后的测试脚本

  本篇文档最开始,已经说过"那么弊就是你需要对录制完成的脚本再做进一步优化"。

  从上1个章节的描述,我们可以知道仅仅保留"http://www.baidu.com/"这1个请求就可以了。因此我们直接去掉其它不相关的东西,如下图所示:

9.    建立1个监听器

  在节点"测试计划"下,建立1个被称作"查看结果树"的东西,如下图所示:

  当然了你也可以建立"图形结果"、"断言结果"、"聚合报告"、"用表格查看结果"等等其它形式的监听器。每个类型的监听器的作用都是收集性能测试结果,只是呈现结果的样式不同,这个要结合具体的业务来定,或要结合开发人员"希望观察到哪些数据"来定。

  单击"查看结果树"之后,就算建立完成了。效果如下图所示:

10.    执行1次测试脚本

  切换到"线程组"

  可以看到默认的线程数是"1",循环次数是"1"

  Ramp-Up Period(in seconds)的意思是指"希望在几秒内启动所有的线程"

  执行脚本的操作:Ctrl+R

  在执行脚本前可先执行"清空测试结果"的操作:Ctrl+E

  Question:是否需要先禁用工作台节点下面的"HTTP代理服务器"?

11.    查看测试结果

  切换到"查看结果树"

  单击右侧列表内的这1个"HTTP请求"

  右侧可以分别查看"取样器结果"、"请求"、"响应数据"TAB下的数据

  从测试结果看,第10章节末尾的Question迎刃而解。(Question:是否需要先禁用工作台节点下面的"HTTP代理服务器"?)

12.    20个线程数+循环2次的方法

  切换到"线程组"

  设置线程数写"20",循环次数写"2"

  由于线程数比较少,所以不需要考虑如何设置Ramp-Up Period(in seconds)。

13.    20个线程+脚本运行60秒

  切换到"线程组"

  设置线程数写"20"

  循环次数写"永远"

  勾选"调度器"->持续时间(秒)写"60"

  由于线程数比较少,所以不需要考虑如何设置Ramp-Up Period(in seconds)。

(备注:第12、13章节不附图了,可参考《Jmeter-一个完整的接口测试的脚本.doc》

-end

【NO.10】Jmeter - 一个完整的录制脚本的过程的更多相关文章

  1. jmeter之使用代理录制脚本

    从loadrunner到jmeter,录制压力测试脚本好像都只支持IE,近来才知道jmeter还有自带的录制脚本元件, 且支持IE.Chrome及Firefox等多种浏览器.这里就记录一下通过jmet ...

  2. jmeter(二)录制脚本

    对大多数刚开始接触性能测试的人来说,代码功力可能不是太好,我们可以通过工具,录制脚本来进行测试,以达到我们的目的 一般来讲,录制脚本有两种方法 一.利用badboy进行脚本录制 1.下载安装 badb ...

  3. Jmeter学习系列----2 录制脚本

    虽然专业的自动化测试人员都不会选择录制脚本的方式来进行自动化脚本的编写,但是,我们作为初学者还是可以学习一下怎么利用工具来进行脚本的录制,体验一下自动化工具的效率,下面,具体讲下如何使用jmeter自 ...

  4. 测试工具之Jmeter(使用badboy录制脚本)

    前面使用badboy工具时说过,badboy是可以录制Jmeter的测试脚本,这样省去了自己设计测试用例的麻烦 Jmeter主要是一个性能测试工具,不光在web和http,现在扩展很多功能都可以在Jm ...

  5. jmeter利用自身代理录制脚本

    在利用代理录制脚本时一定要安装java jdk,不然不能录制的. 没有安装过java jdk安装jmeter后打开时会提示安装jdk,但是mac系统中直接打开提示安装jdk页面后下载的java并不是j ...

  6. <转>jmeter(二)录制脚本

    本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...

  7. Jmeter使用HTTP代理服务器录制脚本

    使用Jmeter录制脚本通常使用Badboy工具录制或者Jmeter自带的HTTP代理服务器录制脚本,这里说一下使用HTTP代理服务器录制时遇到的问题. 1.  Jmeter安装 下载得到Jmeter ...

  8. Access应用笔记<四>-一个完整的自动化报表搭建过程

    距离之前的三篇日志已经很久啦,今天终于完成了一个比较完整的自动化报表搭建过程 基于公司数据保密原则,样板就不放到网上来了,简单说一下背景: 这次access实现的功能包括: 1)为部门整体搭建了一个员 ...

  9. 【NO.9】jmeter - 一个完整的接口测试的脚本

    使用Jmeter对一个接口地址或者一个页面地址执行N次请求,下面来说说怎么建立一个测试脚本(也称为”测试计划”). 1.    运行Jmeter.bat 双击"Jmeter.bat"文件,稍等片刻后J ...

随机推荐

  1. redis可视化工具redisClient

    下载连接:百度网盘 直接解压就可以用了

  2. JavaScript学习笔记(二)——选项卡小结

    Js制作选项卡小结 1.先构思好需要展示的页面效果,比如这样 2.需要显示的效果通过html和css制作出来,包括选项(第一课.第二课)的鼠标停留背景变色.下方选项页内容切换的内容等. 3.把此选项卡 ...

  3. (cljs/run-at (JSVM. :browser) "简单类型可不简单啊~")

    前言  每逢学习一个新的语言时总要先了解这门语言支持的数据类型,因为数据类型决定这门语言所针对的问题域,像Bash那样内置只支持字符串的脚步明显就是用于文本处理啦.而数据类型又分为标量类型(Scala ...

  4. Maven pom.xml配置详解

    POM的全称是“ProjectObjectModel(项目对象模型)”. 声明规范 <projectxmlns="http://maven.apache.org/POM/4.0.0&q ...

  5. APP测试相关点归纳

    APP测试相关点归纳   1.1测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为一两周,根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前需确认项目排期. 1.2测试资源 ...

  6. jqueryEasyUI列表

    背景 因为学习大数据开发这段时间,同时也学习java的一些知识.利用了近五个月的时间来投入学习,当然我选择了一个机构,因为已经做了四年多的开发,所以即使不是做的java但是java还是了解的,这段时间 ...

  7. jsp实现上一页下一页翻页功能

    前段时间一直忙于期末考试和找实习,好久没写博客了. 这段时间做了个小项目,包含了翻页和富文本编辑器Ueditor的两个知识点,Ueditor玩的还不是很深,打算玩深后再写篇博客. 要实现翻页功能,只需 ...

  8. nodejs服务器部署教程二

    这篇文章主要介绍如何在服务端跑vuejs的项目,如果上一篇教程你成功输出了hello world,那这一篇更简单 首先你要有一个已经能在本地跑的基于vuejs的项目,我就以之前写的仿饿了么的项目为例来 ...

  9. MS SQL Server Management Studio中提示不允许保长度出现不允许保存更改。您所做的更改要求删除并重新创建以下表

    在SQL Server Management Studio中直接修改正在连接的表结构会出现改不了的情况,如下图 解决方法:工具-选项-设计器--阻止保存要求重新创建表的更改,去掉对勾--确定即可

  10. socket 异步通信的一些问题

    socket通信在使用时被封装很简单,像操作文件一样简单,正是因为简单里面好多细节需要深入研究一下. windows下通信有select和iocp方式,select是传统方式,在socket里使用re ...