Jmeter简单操作
Posted KIMdamI
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter简单操作相关的知识,希望对你有一定的参考价值。
一、使用Jmeter测试快速入门
1、线程组是什么
进程:一个正在执行的程序对应一个进程
线程:一个进程有多少个执行线程
线程组:按照线程性质对线程分组
三者关系:一个进程有多少个线程组,一个线程组有多少个线程
测试计划—线程组—线程组属性中的线程数
并发执行:多个线程同时执行,特点:执行结束的顺序与开始的顺序不一致
顺序执行:按照线程的启动顺序挨个执行
默认情况下,线程组中的线程是并发执行
每一个线程都要执行组内的http请求
设置线程组顺序执行:勾选测试计划中的(独立运行每个线程组)
线程组用来模拟用户的并发访问
创建线程组
1、线程组主要包含三个参数
线程数、准备时长、循环次数
2、线程数
虚拟用户数、一个虚拟用户占用一个线程。设置多少虚拟用户数在这里也就是多少个线程数
3、准备时长
设置的虚拟用户数需要多长时间全部启动。如果线程数为20,准备时长为10 ,那么需要10秒钟启动20 个线程。也就是每秒钟启动2个线程。
4、循环次数
每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总 请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
5. . 调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)
6. 持续时间(秒):测试持续时间,会覆盖结束时间 3.1.8. 启动延迟(秒):测试延迟启动时间,会覆盖启动时间
7. 启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会 覆盖它。
8、结束时间:测试结束时间,持续时间会覆盖
创建http请求
制定请求域名,请求路径
一个HTTP请求有着许多的配置参数,下面将详细介绍:
名称:本属性用于标识一个取样器,建议使用一个有意义的名称。
注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。
服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址。
端口号:目标服务器的端口号。
方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、 DELETE等。
Content encoding :内容的编码方式,默认值为iso8859
路径:目标URL路径(不包括服务器地址和端口)
设置对应查看内容
查看表格信息
查看结果树
聚合报告参数说明
lable:对应每一个http请求,显示的是http请求的Name,如百度http请求name为baidu
#Samples:表示这一次的测试中一共发出了多少请求,如上图所示,sougou和baidu的http请求 每个都发出30个请求
Average:平均响应时间,指的是所有的请求的平均响应时间,如上图的30个请求的总的响应时间 除以30得出的平均响应时间,默认的情况下是单个请求的平均响应时间,但当使用了“事务控制器” 时,则以事物为单位显示平均响应时间
Median:中位数,也就是50%用户的响应时间
90%Line:90%用户的响应时间
Min:最小响应时间
Max:最大的响应时间
Error%:查看错误率
Throughput:吞吐量,默认情况下表示每秒完成的请求数,如上图所示,每秒完成的请求数分别 为6.6个每秒,6.2个每秒
Recived KB/Sec:每秒从服务器端接收到的数据量,以kb为计算的单位
Jmeter正则表达式提取
1、使用正则提取
运用Jmeter正则提取器,可以从请求的响应结果中取到需要的内容,从而实现关联。关联是请求与请求之 间存在数据依赖关系,需要从上一个请求获取下一个请求需要回传回去的数据
*
:匹配前面的子表达式零次或多次。例如,zo* 能匹配 “z” 以及 “zoo”。* 等价于{0,}。
+:匹配前面的子表达式一次或多次。例如,‘zo+’ 能匹配 “zo” 以及 “zoo”,但不能匹配 “z”。+ 等价于 {1,}。
?:匹配前面的子表达式零次或一次。例如,“do(es)?” 可以匹配 “do” 、 “does” 中的 “does” 、 “doxy” 中的 “do” 。? 等价于 {0,1}。
( ):标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用
.:匹配除换行符 \\n 之外的任何单字符。要匹配 . ,请使用 . 。
以上是关于Jmeter简单操作的主要内容,如果未能解决你的问题,请参考以下文章
jmeterInclude Controller控件&Test Fragment的使用
jmeter的Include Controller控件和Test Fragment控件和Module Controller控件