首页 > 其他分享 >jmeter之关联

jmeter之关联

时间:2022-12-09 20:15:15浏览次数:36  
标签:txt 匹配 name 正则表达式 关联 MYREF file jmeter

一、什么时候需要关联

  1、服务器返回中存在动态变化的值,一般是类似session的无规则数据

  2、后面的操作或请求需要用到前面的请求返回的值

  3、脚本运行之后没有报错,也没有产生什么数据

  Jmeter可以通过“后置处理器”中的“正则表达式提取器”来处理关联

二、如何查找关联

  1、Hidden标签

  2、不规则的一段数字或数字与字母的组合

  3、问开发人员哪些地方是需要动态捕捉数据的

三、简单的关联

比如在访问百度首页时响应数据里面有一个title标签

<title>百度一下,你就知道</title>, 我想在其他的请求中引用这个title

添加正则表达式提取器并设置如下:

说明:

  (1)引用名称:下一个请求要引用的参数名称,如填写title,则可用${myref}引用它

  (2)正则表达式:

      括号扩起来的部分是要提取的

      “.”:点代表匹配任何字符

      “*”:星号代表匹配的字符0个或者多个

      “+”:加号代表匹配的字符1个或者多个

      “?”:问号代表找到第一个就不再找了

      问号(?)放在星号(*)和加号(+)后面代表匹配尽可能少的字符

      例如:<src="test.jpg" width="60px" height="80px"/>

        正则src=".*"和src=".+"会匹配整个字符串

        正则src=".*?"和src=".+?"匹配src="test.jpg"

        *+没有这样的用法,除非是匹配星号本身,即: \*+ 表示一个或多个星号

  (3)模板:用$$引用起来,如果在正则表达式中有多个正则表达式,则可以是$2$$3$等等,表示解析到的第几个值给title。如:$1$表示解析到的第1个值

  (4)匹配数字:0代表随机取值,-1代表全部取值

  (5)缺省值:如果正则表达式没有匹配到值,则给它一个默认值

添加一个关联请求来验证这个关联:

执行后我们看到关联成功了

四、正则表达式举例

1、提取单个字符串

  匹配Web页面的如下部分:name = "file" value = "readme.txt">,并提取readme.txt

  正则表达式:name = "file" value = "(.+?)">

2、提取多个字符串

  匹配Web页面的如下部分:name = "file.name" value = "readme.txt">,并提取file.name和readme.txt

  正则表达式:name = "(.+?)" value = "(.+?)",这样就会创建2个组,分别用于$1$和$2$

  比如:

  

  如下变量的值将会被设定:

    MYREF:    file.namereadme.txt
    MYREF_g0:   name = "file.name"value = "readme.txt"     模板{0}
    MYREF_g1:   file.name                                                   模板{1}
    MYREF_g2:   readme.txt                                                 模板{2}

  事实上,MYREF_g0、MYREF_g1、MYREF_g2是正则表达式的结果组,而MYREF才是被模板控制提取出来结果,在需要引用地方可以通过:${MYREF_g1}, ${MYREF_g2进行使用。

标签:txt,匹配,name,正则表达式,关联,MYREF,file,jmeter
From: https://www.cnblogs.com/wfw001-2018/p/12679832.html

相关文章

  • jmeter之参数化
    一、参数化1、指定参数值这种方法常用来解决线程组中多个请求共用相同的数据,比如我们所有请求都可能有相同的IP地址,当地址改变时可以一改全改。添加用户定义的......
  • jmeter之非GUI运行
    一、应用场景日常测试过程中发现,在大数量并发时,jmeterGUI界面经常宕机、卡死,在这种情况下我们就需要使用命令行来执行脚本了(非GUI模式)。二、命令行模式优点1、节约系统......
  • jmeter分布式部署
    一、为什么要进行分布式部署Jmeter对于并发量很大的需求,如上万并发量,受到CPU和内存的限制,单机模拟场景是实现不了的,为了让JMeter提供更大的负载能力,须使用它的分布式......
  • JMeter+Badboy实现简单压力测试
    JMeter+Badboy实现简单压力测试​​下载需要的工具​​​​下载Badboy步骤:​​​​下载JMeter步骤:​​​​安装Badboy后打开​​​​打开JMeter​​下载需要的工具1.下载Bad......
  • jmeter教程
    安装与配置一:下载jdk——配置jdk环境变量1.新建环境变量变量名:JAVA_HOME变量值:(即JDK的安装路径)2.编辑Path%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;3.新建环境变量变量名......
  • Task5 作者信息关联 笔记
    文章目录​​任务5:作者信息关联​​​​5.1任务说明​​​​5.2数据处理步骤​​​​5.3社交网络分析​​​​5.3.1图类型​​​​5.3.2图统计指标​​​​5.4具体代......
  • UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现
    【转】UML的9种图例解析-James·wang-博客园 https://www.cnblogs.com/firstcsharp/p/5327659.html 类与类图1)类(Class)封装了数据和行为,是面向对象的重要组......
  • jmeter控制器之随机控制器
    RandomController:随机控制器,当控制器下面的请求存在多个时,随机选择一个请求执行运行结果:执行多次后的结果......
  • 全网最牛最全面的全栈Jmeter性能测试之生成测试报告
    什么是JMeterjmeter是100%的java语⾔开发的,它是免费开源的软件,是⾮常优秀的性能测试⼯具和接⼝测试⼯具,⽀持主流协议的测试ps【文章末尾给大家留下了大量的福利】结构测试......
  • Jmeter小技能【BeanShell断言、多个相同参数提取、固定定时器、输出执行报告】
    1、BeanShell断言比响应断言更灵活,可通过BeanShell脚本设置Faillure及FailureMessage来执行断言检查,并输出断言失败接口的响应错误内容。//获取响应结果内容Stringre......