你的长处决定了你天花板的高度,而你的短处,自然会有社会其他分工从事的人来代替。
今天给大家分享的是,【如何使用jmeter创建一个简单的性能测试】。
启动jmeter后,jmeter会自动生成一个空的测试计划,用户可以基于该测试计划建立自己的测试计划。
一、添加线程组
1、在测试计划右键弹出下拉菜单(添加-->线程(用户)--->线程组)中选择线程组。
2、线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。
- 线程数: 虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
- 准备时长: 设置的虚拟用户数需要多长时间全部启动。如果线程数为5 ,准备时长为1 ,那么需要1秒钟启动5个线程。
- 循环次数:每个线程发送请求的次数。如果线程数为5 ,循环次数为10 ,那么每个线程发送10次请求。总请求数为5*10=50 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。
二、添加HTTP请求
在线程组上右键菜单(添加--->取样器--->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方法发送,默认不选中。
三、添加监听器
脚本的主要部分设置完成后,需要通过某种方式获得性能测试中的测试结果,在本例中,我们关心的是请求的响应时间。
Jmeter 使用监听器元件收集取样器记录的数据并以可视化的方式来呈现。
添加聚合报告,右键点击线程组,在弹的菜单(添加--->监听器--->聚合报告)中选择聚合报告。
点击工具栏上的 绿色运行按钮
或者通过菜单栏(运行--->启动)来运行测试。
查看 "聚合报告" 的运行结果:
- 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: 每秒从发送到服务器端的数据量
到此,一个简单的性能测试完成了。