软件测试技术之(四)创建一个简单的性能测试
白羽 2018-07-20 来源 :网络 阅读 774 评论 0

摘要:本文将带你了解软件测试技术之(四)创建一个简单的性能测试,希望本文对大家学测试技术有所帮助。

请先参考Jmeter介绍与安装 ,启动Jmeter。


建立测试计划
启动jmeter后,jmeter会自动生成一个空的测试计划,用户可以基于该测试计划建立自己的测试计划。




添加线程组



一个性能测试请求负载是基于一个线程组完成的。一个测试计划必须有一个线程组。测试计划添加线程组非常简单。在测试计划右键弹出下拉菜单(添加–>Threads(Users)—>线程组)中选择线程组即可。

jmeter中 每个测试计划至少需要包含一个线程组,当然也可以在一个计划中创建多个线程组,那么多个线程组之间又会怎样的顺序执行(串行还是并行)?在测试计划下面多个线程是并行执行的,也就是说这些线程组是同时被初始化并同时执行线程组下的Sampler的。





线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。

线程数: 虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。

准备时长: 设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。

循环次数: 每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。

设置合理的线程数对于能否达到测试目标有决定性的影响。除了上面介绍的固定循环次数与永远外;也可以灵活的选择设定测试运行时间。勾选“调度器”,进行调度器配置。


设置:线程数为10,其它参数默认。




添加HTTP请求



添加完成线程组后,在线程组上右键菜单(添加—>Sampler—>HTTP请求)选择HTTP请求。对于jmeter来说,取样器(Sampler)是与服务器进行交互的单元。一个取样器通常进行三部分的工作:

1、向服务器发送请求

2、记录服务器的响应数据

3、记录响应时间信息






一个HTTP请求有着许多的配置参数,下面将详细介绍:

名称: 本属性用于标识一个取样器,建议使用一个有意义的名称。

注释: 对于测试没有任何作用,仅用户记录用户可读的注释信息。

服务器名称或IP : HTTP请求发送的目标服务器名称或IP地址。

端口号: 目标服务器的端口号,默认值为80 。

协议: 向目标服务器发送HTTP请求时的协议,可以是http或者是https ,默认值为http 。

方法: 发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。

Content encoding : 内容的编码方式,默认值为iso8859

路径: 目标URL路径(不包括服务器地址和端口)

自动重定向: 如果选中该选项,当发送HTTP请求后得到的响应是302/301时,JMeter 自动重定向到新的页面。

Use keep Alive :  当该选项被选中时,jmeter 和目标服务器之间使用 Keep-Alive方式进行HTTP通信,默认选中。

Use multipart/from-data for HTTP POST : 当发送HTTP POST 请求时,使用Use multipart/from-data方法发送,默认不选中。


在这里我们添加一个HTTP请求: //www.testclass.net




添加监听器(Listener)



脚本的主要部分设置完成后,需要通过某种方式获得性能测试中的测试结果,在本例中,我们关心的是请求的响应时间。

Jmeter 中使用监听器元件收集取样器记录的数据并以可视化的方式来呈现。Jmeter有各种不同的监听器类型,因为上面添加的为HTTP请求,这里添加聚合报告,更为直观的查看测试结果。

添加聚合报告,右键点击线程组,在弹的菜单(添加—>监听器—>聚合报告)中选择聚合报告。



点击工具栏上的 绿色运行按钮 或者通过菜单栏(运行—>启动)来运行测试。

查看 “聚合报告” 的运行结果:



Label: 请求的名称,就是我们在进行测试的httprequest sampler的名称

Samples: 总共发给服务器的请求数量

Average: 单个请求的平均响应时间,单位是毫秒

Median: 50%的请求的响应时间

90%Line: 90%的请求的响应时间

95%Line: 95%的请求的响应时间

99%Line: 99%的请求的响应时间

Min: 最小的响应时间

Max: 最大的响应时间

Error%: 错误率=错误的请求的数量/请求的总数

Throughput:  吞吐量即表示每秒完成的请求数

Received KB/sec:  每秒从服务器端接收到的数据量

Sent KB/Sec: 每秒从发送到服务器端的数据量


到此,一个简单的性能测试完成了。    

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标软件测试之测试技术频道!

本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程