首页 > 其他分享 >Jmeter三种常见关联方式

Jmeter三种常见关联方式

时间:2022-10-08 17:34:23浏览次数:44  
标签:XPath 线程 HTTP 请求 关联 添加 三种 提取 Jmeter

Jmeter关联

 关联

  请求之间有依赖关系时,就需要用到关联处理。Jmeter可以通过‘后置处理器’中的一些组件来处理关联
  常用的关联方法:
    正则表达式提取器     XPath提取器     JSON提取器

 正则表达式提取器

  添加方式:测试计划 --> 线程组--> HTTP请求 --> (右键添加) 后置处理器 --> 正则表达式提取器
  步骤
   1.添加线程组    2.添加HTTP请求    3.添加正则表达式提取器    4.添加HTTP请求    5.添加查看结果树
  参数
   引用名称:下一个请求要引用的参数名称,如填写title,则可用${title}引用它    正则表达式     ():括起来的部分就是要提取的。     .:匹配任何字符串。     +:一次或多次。     ?:不要太贪婪,在找到第一个匹配项后停止。    模板:用$$引用起来,如果在正则表达式中有多个正则表达式,则可以是$2$$3$等等,表示解析到的第几个值给title。如:    $1$表示解析到的第1个值    匹配数字:0代表随机取值,-1代表全部取值,1代表取第一个值    缺省值:如果参数没有取得到值,那默认给一个值让它取 0

 XPath提取器

  添加方法:测试计划->线程组->HTTP请求->后置处理器->XPath提取器
  步骤
   1.添加线程组    2.添加HTTP请求-传智播客    3.添加XPath提取器    4.添加HTTP请求-百度    5.添加查看结果树    注:如果XPath报错,勾选Use Tidy的Quiet可能有效 0 0 0
  参数
   Use Tidy (tolerant parser):如果勾选此项,则使用Tidy将HTML响应解析为XHTML。当需要处理的页面是HTML格式时,必须选中该选项,当需要处理的页面是XML或XHTML格式(例如,RSS返回)时,取消选中该选项。    引用名称:存放提取出的值的参数    XPath Query:用于提取值的XPath表达式    匹配数字:如果XPath路径查询导致许多结果,则可以选择提取哪个作为变量     0:表示随机     -1:表示提取所有结果(默认值),它们将被命名为<变量名>_N(其中N从1到结果的个数)     X:表示提取第X个结果。如果这个x大于匹配项的数量,则不返回任何内容。将使用默认值    缺省值:参数的默认值

 Json提取器

  添加方式:测试计划->线程组->HTTP请求->后置处理器->JSON提取器
  步骤
   1.添加线程组    2.添加HTTP请求    3.添加JSON提取器    4.添加HTTP请求    5.添加查看结果树 0 0 0
  参数设置
   Names of created variables:存放提取出的值的参数    JSON Path Expressions:JSON路径表达式    Match No.(0 for Random):取第几个    Compute concatenation var(suffix _ALL):是否同级所有,即将匹配到的所有值保存,名为‘变量名_ALL’    Default Values:缺省值,没取到就用这里填的值    注:获取多个值时,变量名、json、匹配值、缺省值要用分号间隔开

 跨线程组关联

  当有依赖关系的两个请求(一个请求的入参是另一个请求返回的数据),放入到不同的线程组中时,就不能使用提取器保存的变量来传递参数值,而是要使用Jmeter属性来传递。
  jmeter属性配置方法
   函数实现     __setProperty函数:将值保存成jmeter属性     __property函数:在其他线程组中使用的property函数读取属性     注:__setProperty函数需要通过BeanShell取样器来执行(BeanShell取样器作用:执行函数和Java脚本)
  操作步骤
   1.添加线程组1    2.添加HTTP请求    3.添加JSON提取器    4.添加BeanShell后置处理程序    5.创建全局变量    6.添加线程组2    7.添加HTTP请求2    8.添加查看结果树    全局变量 0    BeanShell取样器    HTTP请求2    查看结果树
  问题
   1.设置全局变量步骤注意     函数助手中注意设置为setProperty,并正确传值;BeanShell取样器中一定要写入;第二个HTTP请求中设置注意将中间的${city}去掉    2.出现302重定向错误     先检查两个线程组和其中HTTP请求的名称是否一样,如果一样,则会出现302错误

标签:XPath,线程,HTTP,请求,关联,添加,三种,提取,Jmeter
From: https://www.cnblogs.com/qmm-1000/p/16769634.html

相关文章

  • php读取Excel文件内容(格式化为关联数组)
    1、composer引入php处理excel包:box/spout 2、处理函数示例:/***@paramstring$filePath文件绝对路径*@returnarray*@throws*/......
  • VMware的三种网络模式
    VMware的三种网络模式系统集成项目专家阿祥 2022-09-2610:39 发表于河南 以下文章来源于网络技术平台 ,作者弗克斯网络技术平台.混迹网络行业10余年,现为世......
  • 【测试】Jmeter做压力测试
    1、首先在Jmeter可视化界面里配置好线程数和执行时间   2、点击保存该测试样例到一个指定的目录,如 D:\CodeSoftware\apache-jmeter-test-case\测试案例-01.jmx ......
  • 3、spring+mybatis关联映射(无mapper实现类)+idea+maven
    该工程采用spring+mybatis的关联映射,动态sql,sql片段实现1、搭建项目结构如下  2、配置项目的pom.xml文件中的依赖1<?xmlversion="1.0"encoding="UTF-8"?>23<proj......
  • idea中jar包关联源码
    idea中jar包关联源码,方便查看了解源码,记录下。1、问题描述idea中jar包关联源码,方便查看了解源码,记录下。2、问题说明springboot源码包,直接zip下载就......
  • C#小技巧---计算耗时的三种方法
    1.使用DateTime.Now计算staticvoidMain(string[]args){varbegin=DateTime.Now;Thread.Sleep(2000);var......
  • Jmeter组件:集合点
    1、是什么Jmeter内置组件之一,可以启动多个用户,让多个用户在同一刻去访问服务器2、为什么要使用集合点可以模拟高并发实现,测试服务器性能3、如何使用场景:模拟N个用户在同一时......
  • 【STL】关联式容器 - Set和Multiset
    Set和MultisetSTL提供的vector,list和deque属于序列式容器即可序群集,每个元素均有固定的位置,取决于插入时机和地点,和元素值无关。如果以追加的方式对一个群集置入六个元素......
  • java初步学习 方法的三种格式(基于黑马的课进行自学,初学者,不喜勿喷)9
    初步学习方法基本概念方法是程序(mathod)中最小的执行单元我们可以自己创建一个方法,并在其中写入想要执行的代码(将代码打包),这样可以重复使用,可以提高代码的复用性与可维......
  • 【Django Admin】外键关联下拉框筛选数据
    #admin.pyclassInnerOrderAdmin(admin.ModelAdmin):...#外键关联下拉框筛选defformfield_for_foreignkey(self,db_field,request,**kwargs):......