Jmeter入门使用文档格式.docx

上传人:b****3 文档编号:6411159 上传时间:2023-05-06 格式:DOCX 页数:29 大小:1.45MB
下载 相关 举报
Jmeter入门使用文档格式.docx_第1页
第1页 / 共29页
Jmeter入门使用文档格式.docx_第2页
第2页 / 共29页
Jmeter入门使用文档格式.docx_第3页
第3页 / 共29页
Jmeter入门使用文档格式.docx_第4页
第4页 / 共29页
Jmeter入门使用文档格式.docx_第5页
第5页 / 共29页
Jmeter入门使用文档格式.docx_第6页
第6页 / 共29页
Jmeter入门使用文档格式.docx_第7页
第7页 / 共29页
Jmeter入门使用文档格式.docx_第8页
第8页 / 共29页
Jmeter入门使用文档格式.docx_第9页
第9页 / 共29页
Jmeter入门使用文档格式.docx_第10页
第10页 / 共29页
Jmeter入门使用文档格式.docx_第11页
第11页 / 共29页
Jmeter入门使用文档格式.docx_第12页
第12页 / 共29页
Jmeter入门使用文档格式.docx_第13页
第13页 / 共29页
Jmeter入门使用文档格式.docx_第14页
第14页 / 共29页
Jmeter入门使用文档格式.docx_第15页
第15页 / 共29页
Jmeter入门使用文档格式.docx_第16页
第16页 / 共29页
Jmeter入门使用文档格式.docx_第17页
第17页 / 共29页
Jmeter入门使用文档格式.docx_第18页
第18页 / 共29页
Jmeter入门使用文档格式.docx_第19页
第19页 / 共29页
Jmeter入门使用文档格式.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Jmeter入门使用文档格式.docx

《Jmeter入门使用文档格式.docx》由会员分享,可在线阅读,更多相关《Jmeter入门使用文档格式.docx(29页珍藏版)》请在冰点文库上搜索。

Jmeter入门使用文档格式.docx

下面我们用Jmeter来访问这个接口。

3.2.使用Jmeter进程HTTP测试

3.2.1.添加线程组

●右键“测试计划”->

“添加”->

“Threads(Users)”->

“线程组”

3.2.2.添加“HTTP请求”

●右键“线程组”->

“Sampler”->

“HTTP请求”

●打开之后,填入访问该接口所需要的参数,效果如下图

Tips:

1.服务器名或IP:

这里填写服务IP地址(不带端口),有域名的直接填写域名

2.端口号:

这里填写端口号,有域名的这里为空就好。

3.Timeouts(milliseconds):

超时时间,单位是毫秒;

Connect:

连接超时;

Response:

响应超时。

二者都可以不填

4.Implementa:

采用什么实例来运行这次HTTP请求(HttpClient4/HttpClient3.1/Java),这里我们不用选择,直接默认就好。

协议:

该接口采用什么协议(http/https),这里不填默认是http,根据情况填写

方法:

请求该接口的方法(GET/POST等),根据接口请求类型选择。

Contentencoding:

这里是返回报文的编码格式(如‘utf-8’),采用默认值就好

5.同请求一起发送参数:

接口的参数,可以通过下方“添加”按钮,添加参数,左边为“key”,右边填“value”,如上图。

(这里只适用于传参数的接口,传Json和文件等接口使用这种方式不支持,暂不做介绍)

3.2.3.添加监听器

完成上述3.2.1和3.2.2步,一个接口的简单脚本已经编写完成了;

但是此时我们还不知道在哪里查看脚本运行的结果,这里我们需要添加一个监听器。

“监听器”,选择“察看结果树”

Jmeter提供了需要监听器,有兴趣的可以去一一添加,察看效果。

3.2.4.运行脚本

●点击

按钮,运行脚本,察看结果

在“响应数据”下,我们看到了与使用浏览器一样的返回结果(报文中headers有差异,这部分可以忽略,想知道为什么不一样的可以去学学http协议,在这里不影响结果)。

到这里,一个http接口测试的Jmeter脚本已经完成。

“Ctrl+S”保存一下吧,下次就可以直接拿来使用了(Jmeter脚本默认保存在bin目录下)

3.3.压力测试

在上面脚本配置上线程数,即可对该接口进行压力测试啦。

●点击“线程组”

1.线程数:

需要采用多少个并发。

2.Ramp-UpPeriod(inseconds):

设置到达最大并发所需时间(如上图,从0增加到5个并发,花费1秒钟)

3.循环次数:

每个并发执行几遍脚本(如上图,每个线程执行100遍)。

勾选永远,则脚本会被无限循环执行下去。

4.调度器:

勾选则启用调度器

持续时间(秒):

设置脚本跑多久(如需要让脚本跑一分钟,则填入60)

启动延迟(秒):

延迟多少秒才开始执行脚本

●添加“聚合报告”

聚合报告是一个监听器,作用是,为本次压力测试整理出一份“报表”

按钮让我们来看看5并发循环100次的结果

按钮,清除上次测试结果,然后来看看10并发循环100次结果

可以看到5并发时,Throughput为13.0/sec;

10并发时:

Throughput为22.6/sec。

理论上,并发数与吞吐量成正比,并发越多,吞吐量越大。

实际上,服务器的处理能力和网络带宽是有限的,当并发数达到一定数量之后,吞吐量不随并发数增加而增长,出现响应时间变长,甚至服务器宕机等状况,称之为服务器的性能“瓶颈”。

简单来说,性能测试就是根据服务器的“瓶颈”,来评估服务的性能是否能够达到期望。

附:

表头说明

Label- 

如图,在不勾选"

Includegroupnameinlabel?

"

复选框的情况下,为请求取样器的名称,否则为“请求取样器所在线程组:

请求取样器名称”

#Samples- 

用同一个请求取样器,发送请求的数量(注意:

该值是不断累计的)。

比如,10个线程数设置为10,迭代10次,那么每运行一次测试,该值就增加10*10=100

Average- 

默认情况下是单个Request的平均响应时间,当使用了TransactionController 

时,也可以以Transaction为单位显示平均响应时间

Median- 

中位数。

表示响应时间本不大于该时间值的请求样本数占总数的50%

90%Line- 

表示响应时间不大于该时间值的请求样本数占总数的90%

Min- 

针对同一请求取样器,请求样本的最小响应时间

Max- 

针对同一请求取样器,请求样本的最大响应时间

Error%- 

出现错误的请求样本的百分比

Throughput- 

吞吐量以“requests/second、requests/minute、requests/hour”来衡量。

 

时间单位已经被选取为second,所以,显示速率至少是1.0,即每秒1个请求。

当吞吐量被保存到CVS文件时,采用的是requests/second,所以30.0requests/second 

在CVS中被保存为0.5Kb/sec- 

以Kilobytes/seond来衡量的吞吐量

3.4.附上演示脚本

上面演示步骤最后保存的脚本,可以直接用Jmeter打开,运行。

4.录制HTTP脚本

当需要为多个接口做脚本时,手动编制就显得太麻烦,这时候我们可以使用Jmeter自带的脚本录制功能。

录制原理是Jmeter启用一个代理服务器,然后配置浏览器代理,Jmeter就可以对浏览器进行抓包,然后生成脚本。

4.1.Jmeter配置代理服务器并录制脚本

4.1.1.添加线程组

4.1.2.添加录制控制器

“逻辑控制器”->

“录制控制器”

4.1.3.添加代理服务器

●右键“工作台”->

“非测试元件”->

“Http代理服务器”

●配置代理服务器

1.端口:

用默认的8888就好,如果冲突,可以换一个不冲突的端口号。

2.HTTPSDomains:

默认本机localhost

3.目标控制器:

选择测试计划>

线程组>

录制控制器

4.分组:

选择每个组放入一个新的控制器

然后点击“启动”,弹出的提示框点击“确定”,代理就启动成功了。

●添加“察看结果树”

右键“HTTP代理服务器”->

“监听器”->

“察看结果树”

4.1.4.设置浏览器代理

Jmeter代理服务器启动之后,再设置浏览器代理,就可以抓包了。

不同浏览器的代理设置方式不一样。

一般来说,浏览器都是在设置系统代理,一个浏览器设置了代理,其它浏览器也会用这个代理。

下面介绍三种常用浏览器代理的设置方法。

4.1.4.1.IE浏览器

1.点击“工具”->

“Internet选项”

2.在新打开的窗口中选择“连接”,点击“局域网设置(L)”

3.在弹出窗口,选中“为LAN使用代理服务器(这些设置不用于拨号或VPN练级)(X)”,然后在“地址(E)”填入localhost,“端口(T)”填入刚设置的代理端口号8888。

然后点击“确定”完成配置。

4.1.4.2.GoogleChrome(谷歌浏览器)

1.点击右上角,展开菜单,点击“设置”

2.点击最下方“显示高级设置...”,找到“更改代理服务器设置...”,点击

3.弹出新窗口后,剩下的操作照着IE浏览器设置代理的2、3就可以了

4.1.4.3.Firefox(火狐浏览器)

1.点击右上角,展开菜单,点击“选项”

2.选择“高级”->

“网络”,点击“设置(E)...”

3.在新窗口配置代理:

选择“手动配置代理:

(M)”,“HTTP代理:

(M)”填入“localhost”,“端口:

(P)”填入“8888”,点击“确定”,设置完成。

Tip:

这里设置的代理是设置的自己的,不会影响系统代理设置。

4.1.5.录制脚本

所有准备工作都做完,可以开始录制脚本了,还用上面举例的接口,这里尝试录制该接口的脚本。

1.在一个设置好代理的浏览器中打开该接口,用GoogleChrome演示一下

2.然后我们看看Jmeter,这里捕获了这次请求的信息,并在“录制控制器”下生成了一条Http请求,如下

3.将需要的Http请求拉倒“线程组”下,然后清空“录制控制器”,然后就可以开始下一个接口的录制

4.录制完成之后,在线程组下添加“察看结果树”,“Ctr+S”保存脚本,运行一下,看到两条请求都成功了,一个脚本就录制成功了!

4.1.6.一个未解决的问题

在录制脚本时,会发现很多无用的请求干扰,在这里Jmeter代理提供了一个过滤器,如接口是*.html的,使用“.*/*.html”过滤。

这里配置了过滤,总不好用,要么什么也没过滤掉,要么都过滤没了,还有把需要的一部分也过滤没了。

鉴于此,录制脚本时,尽量少开其它网页,减少干扰。

如有哪位知道怎么设置这个过滤器,请告知,感激不尽。

5.TCP测试

就像简介上说的,Jmeter不单可以做Web测试,也可以TCP测试。

TCP脚本跟HTTP脚本做成十分类似,但是有些地方会不同,还是啰嗦介绍一下。

5.1.创建一个TCP测试桩

先创建一个简单的TCP服务器,用来学习Jmeter的TCP测试,这个服务器只做一个事情,就是收到一个报文,然后给一个响应。

这是从网上找的一份简单的TCP服务器代码,python语言写的,直接运行就好,端口是8888,IP则为运行该脚本的机器的IP地址。

●问题:

怎么运行这个服务器?

答:

有很多方法可以启动,介绍一种简单的,找一个Linux服务器,上传这个文件,然后执行命令pythonthreadServer.py就OK了。

5.2.创建TCP测试脚本

和HTTP测试脚本类似

5.2.1.添加线程组

5.2.2.添加“TCP取样器”

“TCP取样器”

●看下“TCP取样器”的参数

1.这里填服务器IP

2.端口号

3.超时时间,左边连接超时,右边响应超时,单位都是毫秒

4.EOL,每个最后一个字符的byte值,这个是用来校验接收报文是否结束

5.这里是需要发送的报文

5.2.3.添加监听器

到这一步,一个TCP测试脚本就完成了,整体效果如下

5.2.4.运行脚本

右边框里的就是TCP服务器响应报文,脚本这就跑通了

服务器后台响应

注:

这里对EOL特殊说明一下,第一次运行脚本,不知道这个EOL填写什么,可以先运行脚本,然后手动停止运行脚本,如下

然后见到如下结果

脚本执行失败,但是我们仍然获得了响应报文,将最后一个字符‘2’转换为byte值就是50,所以之前的EOL填入50。

5.2.5.发送16进制字节流报文

上面介绍的都是工具默认的文本报文,Jmeter同样支持发送16进制报文,我们只需要修改一个参数值就好了。

●修改Jmeter参数

右键“工作台”->

“PropertyDisplay”

找到参数tcp.handler,如下

修改其值为BinaryTCPClientImpl就OK了,如果发现这个参数没有生效,按F5刷新一下。

1.tcp.handler有三种设置:

TCPClientImpl:

文本数据

BinaryTCPClientImpl:

传输二进制数据,指定包结束符。

LengthPrefixedBinaryTCPClientImpl:

数据包中前2个字节为数据长度。

2.上面介绍的修改参数是临时的,重启Jmeter之后就会还原,需要永久修改的可去修改bin目录下的配置文件jmeter.properties中的参数tcp.handler,重启Jmeter生效。

●发送16进制字节流报文,脚本需要做如下调整

6.UDP测试

Jmeter做UDP测试,需要下载插件支持,这里先不介绍Jmeter插件安装,上面提供的Jmeter已配置好插件。

6.1.创建一个UDP测试桩

这里用python做了一个简单的udp服务器,该服务器只会一件事情,就是将收到的报文内容返还给你。

运行该服务器的方法同5.1一样,找一个Linux服务器,上传该python文件,执行命令“pythonudpServer.py”,该服务器端口为54321,IP为Linux服务器的IP地址。

6.2.创建UDP测试脚本

6.2.1.添加线程组

6.2.2.添加“jp@gc-UDPRequest”

“jp@gc-UDPRequest”

●配置“jp@gc-UDPRequest”

1.服务器IP地址

2.UDP服务器端口号

3.勾选等待返回报文,不勾选则只管发送报文,不接收

4.等待返回报文的超时时间

5.发送报文的编码格式,这里可以手动编辑

kg.apc.jmeter.samplers.HexStringUDPDecoder直接发送16进制数据,HEX-encoded

kg.apc.jmeter.samplers.UDPSampler填写字符串

kg.apc.jmeter.samplers.DNSJavaDecoderdns解析填写格式如:

.AIN

kg.apc.jmeter.samplers.UDPTrafficDecoder接口可以自定义编码/解码

6.需要发送的报文

6.2.3.添加监听器

6.2.4.运行脚本

这里看到,Jmeter已经接收到了UDP服务器的返回值

服务器后台也有简单日志打出来

6.2.5.设置UDP报文格式

修改字段“kg.apc.jmeter.samplers.UDPSampler”的值,默认发送16进制字符流。

如果想发送字符串,则将该字段值改成kg.apc.jmeter.samplers.UDPSampler

7.Jmeter分布式部署

8.配置Jmeter插件管理

1.上官网

2.下载插件管理软件plugins-manager.jar

3.然后将plugins-manager.jar放到Jmeter中的目录lib/ext下,重启Jmeter

4.可以看到“选项”下多了个“pluginsmanager”,如下图

5.该插件能管理Jmeter插件,下载升级,如果要下载新插件,只需在“AvailablePlugins”中勾选,然后点击“ApplyChangesandRestartJmeter”,等待插件下载完,自动重启Jmeter即可。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2