jmeter认知(二)

FTP请求默认用户名:anonymous

添加线程组:右键测试计划(apitest)-添加-threads-线程组

线程组包含三个参数。线程数。准备时长ramp-up period。循环次数

线程数:虚拟用户数,一个虚拟用户占用一个线程

准备时长:设置的虚拟用户数需要多长时间全部启动,例如线程数为20,准备时长10,就是需要10秒启动20个线程

循环次数:每个线程发送请求的次数,如果线程为20,循环次数为100就是每个线程发送100次请求,总共为20*100=2000

添加http默认请求:右键线程组-添加 -配置元件-http请求默认值(配置公共参数-默认请求名。服务器。默认请求路径。保存测试计划。)

添加http请求信息头:右键测试计划-添加-配置元件-Http信息头管理器

添加http请求:右键appitest-添加-sampler-http请求(具体参数)

添加监听器:右键线程组-添加-监听器-图形结果。察看结果树,聚合报告。

聚合报告:label-每个jmeter的element(例如http request)都有一个name属性,这里显示的就是name属性的值。

#samples:表示你这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次。这里显示就是100

Average:平均响应时间—默认情况下是单个request的平均响应时间,当使用了transaction controller时,也可以以transaction为单位显示平均响应时间

Median:中位数,也就是50%用户的响应时间

90%line:90%用户的响应时间不超过N秒

Min:最小响应时间

Max:最大响应时间

Error%:本次测试中出现错误的请求的数量/请求的总数

Throughput:吞吐量—默认情况下表示每秒完成的请求数(request per second)

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

修改线程数用于压力测试:线程数-该线程组有多少个线程,相当于每个线程可以模拟一个用户客户端

Ramp-up periodin seconds-设置多少秒内启动全部进程,如果设置为0,就是并发所有线程

循环次数:执行循环的次数

关联是特殊的参数化。脚本里涉及到时间的变化和程序的生成需要参数化

参数化:脚本数据分离。模拟真实场景 ,动态变化的值(如时间)

读取文本,程序生成,数据库读取

  1. 1)借助函数助手的方式,菜单栏-选项-函数助手对话框-_CSVReaad

Csv file to get values from|*alias :文件的路径

Csv文件序列号|next*alias:索引。从0开始的。第一列0.第二列1.第三列2类推

2)复制生成的参数化函数,打开请求页面,右侧的参数化中找到要参数化的字段。粘贴函数对相应字段参数化。

2(1)借助jmeter的配置元件-CSV data set config

选中线程组-右键-添加-配置元件-csv data set configcsv据文件设置)。放到测试计划下

Filename:文件的路径  file encoding:文件的编码,一定要是utf-8

Variable names(comma-delimited):变量名,自己可编译。文件中各列所表示的参数项。各参数项之间利用逗号隔开。参数项名称需与http requert中参数项一致

Delimiter(use * * for tab):变量名分隔符,如文件中使用逗号分隔,则填写逗号,使用的是tab.则填写 ;文本文件是csv格式的,默认英文逗号

Recycle on eof?—true:当读取文件到结尾时,再重头读取文件

False—当读取文件到结尾时,停止读取文件

Stop thread on eof—false:当读取文件到结尾时,停止进程。True无意义

Recycle on eof选择true。Stop thread on eof选择truefalse无意义

Recycle on eof选择false。Stop thread on eof选择true。线程4个,参数3个

只请求3次。

Recycle on eof选择false。Stop thread on eof选择false。线程4个,参数3个

请求4次。但第4次没有参数可取。无法循环。第4次错误

忽略首行:忽略文件的首行。有标头选true。无标头选false

3(1)jmeter plugins manager 翅膀标志-添加Random CSV Date set

完成后重启jmeter。右键测试计划-配置元件-bzm_Random Csv Data set config。放到测试计划下---随机读取文本内容。勾选random oeder才可随机生成

程序生成

函数助手:—machineIP:读取当前机器IPmachineName:读取当前机器名字

Random:随机生成一个数字。第一个参数一个范围内的最小值,第二个参数一个范围内最大值。例在生成年龄时可用。手机号也可,前几位固定,后面随机。不保证不重复

RandomDate:随机生成日期。默认从当前日期开始到设定的日期之间

第一行格式 yyyy-MM-dd

RandomString:随机生成字符串。比如生成外国名字。也可以生成性别。第一行选择的随机生成个数。第二个可选男女就是选择范围。

Time:当前时间。默认为时间戳 。第一行时间格式。yyyy-MM-dd HH:mm:ss

生成有规律的IDHttp请求-右键-添加-配置元件-计数器 ${引用名称}  number format:取几位数 三位数000 引用名称:变量名称

数据库读取:JDBC request jdbc请求(线程组-sampler采样器)。可连接数据库  右键测试计划配置元件-JDBCconnection(放到测试计划下)detabase url -怎样连接数据库

Vanable names:查询的字段。列表。集合

查询的字段,列表。集合。提取-ForEach控制器-变量—请求路径-${变量名称}-迭代

格式为  jdbc.mysql://ip:port端口号/databasename数据库名字

Jdbc driver class –com.mysql.jdbc.driver

测试计划,下边add directory jar to classpath  浏览添加-mysql-java.bin.jar文件

关联-必须在后置处理器里面

用于检查测试中得到的相应数据等是否符合预期,一般用来设置检查点

用到的检查点(session)的值需要到上一级提取---1.右键-后置处理器—正则表达式提取器

引用名称:下一个请求要引用的参数名称。可用${参数名称}引用它

正则表达式:()-括起来的部分就是要提取的 .-匹配任何字符串

+--一次货多次 ?--不要太贪婪,在找到第一个匹配项后停止。

“(.+?

模板:用$$引用起来。如果再正则表达式中有多个正则表达式,则可用是$1$$2$等。。$1$提取第一个值。

匹配数字:0代表随机取值,1代表全部取值,通常情况下填0

  1. 右键-后置处理器-Boundary Extractor(边界值提取器)

技巧:线程组-右键-添加-sampler-debug sampler。放到察看结果树的上边

  1. Json Path 断言

右键-添加-后置处理器-Json Extractor---json path表达式

{“key”:”value”,”key1”:”value1”}

添加集合点:右键Http请求-定时器-Synchronizing Timer-

两个参数-Number of simulated users to group :集合够多少个用户开始访问

默认为0.跟线程组用户保持一致

Timeout in milili seconds:设置超时时间 毫秒。默认为0.没有超时时间,一直等到用户足够。

添加到正确页面,可鼠标左键拖动,右键在之前插入。作用域--对哪一块起作用,就放到哪一块的下面

思考时间:右键http请求-定时器-固定定时器:固定等待时间(毫秒) 放在线程组下,对所有请求都生效。先于取样器去执行的。

高斯随机定时器:可带有偏差。例如偏差1000.固定延迟偏移3000.取的是2000-4000之间随机的时间数值。

  1. 响应断言:设置断言,判断断言结果是否满足期望结果。2. Json Assertion:判断json的节点,结构是否正确。

如果对哪个请求做断言,就在哪个请求之前做断言。

Igonore status :断言结果报404.默认是错误的。勾选上就是成功的

包括=substring  匹配=equals

断言结果:查看断言结果返回值。文件名也可填写路径进行保存。勾选仅日志错误

命令行压测:Cmd——jmeter -v   jmeter -n -t 脚本全路径 -l 保存的测试结果文件(text.jtl格式)

查看聚合报告时每次查看要点击清空。否则会累积

生成HTML文件。jmeter -n -t 脚本全路径 -l 保存的测试结果文件(text.jtl格式)-e -o ./文件夹名称

资源不够时,先执行测试。执行完成后再生成报告。

Jmeter -g 测试结果的文件的全路径.jtl -o ./文件夹名称

添加聚合报告后最好再添加一个  保存响应到文件。

勾选sava failed ressponses only  dont add number to prefx

文件名称前缀: 可添加路径。

Jmeter资源监控:sever agent   jmeter plugins manager安装 permon

线程组-右键-添加-监听器-permon metrlcs collector

会在运行测试中实时监控服务器表现

处在这个俗世,也得让自己变得更好吧
原文地址:https://www.cnblogs.com/butaileng7/p/13551971.html