zoukankan      html  css  js  c++  java
  • 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

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

    处在这个俗世,也得让自己变得更好吧
  • 相关阅读:
    mysql 防止插入某个字段重复的值
    vue 脚手架的目录结构
    搭建Vue 脚手架项目
    flex 布局的页面
    Java List 排序问题
    maven 管理oracle jar
    JPA 注解
    PL/SQL Developer 不显示系统表,默认显示My objects
    jquery面试题
    web前端课程检测2
  • 原文地址:https://www.cnblogs.com/butaileng7/p/13551971.html
Copyright © 2011-2022 走看看