ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

jmeter 实战 关联 正则表达式 教育系统为例

2021-07-21 18:06:10  阅读:155  来源: 互联网

标签:匹配 请求 为例 正则表达式 抓取 响应 正则 jmeter


要在教育系统中新建一个学校并且直接禁用                 

1. 在jmeter新建一个测试计划   在测试计划中 新建一个线程组   添加cookie管理器 (保持登录) 和请求默认值 (保存IP地址和端口号) 并添加查看结果树 

 

 2. 然后首先用抓包工具fiddler抓取登录接口   

 

打开jmeter 新建HTTP请求    填写抓取到的接口 

 

 2.抓取创建学校接口  

 

 

  创建学校是post请求  需要添加body   

 

 抓取成功后再jmeter中填写  

 

 4.抓取禁用学校接口

 

 post请求首先要注意数据类型 JSON类型的要添加信息头管理器       

 

 我们目的是为了禁用新建的学校,这两个ID是会变化的  所以需要用到正则表达式抓取这两个ID      

填写正则表达式   

 

 然后填写第二个正则提取器 提取sid 和上一步一样  

 

 

  填写成功后添加调式取样器 查看提取结果  

 

 

运行一下脚本   查看是否提取成功   

 

 抓取成功后去引用这个数据     ${}大括号内为正则表达式引用名称 

 

 

 

然后运行脚本    如下图表示成功  

 

 也可以刷新网页看下实际效果 

 

 

一、什么时候需要关联?

 

1. 服务器返回的动态变化而且对业务有影响的需要关联。

2. 回放脚本看是否正确,检查下脚本,是否有动态数据影响

3. 一大串字符串,每次请求参数是否有变化

4. 可以找开发问问,接口是开发做的,最清楚了

动态数据关联:
1.在HTTP请求的参数中经常会遇到一些参数的值是服务器的响应中的动态数据,这些数据需要进行关联才能使得每一次请求都能成功地被服务器接受,在JMeter中常用正则表达式或者JSON提取器来获取这些动态数据。
2.正则表示式允许用户从服务器响应中获取数据,作为后置处理器,正则表示式在每个请求执行后再执行。正则表示式提取出来的数据放在变量中,供后续的请求使用。

  1. 名称:该节点的名称,自行定义
  2. 注释:节点的注释
  3. Apply to:默认选择Main sample only,从主请求中获取数据
  4. 要检查的响应字段:响应包含响应行、响应头、body等,选择从主体即可。
  5. 引用名称:正则取出来的数据放在变量中,变量的名称自己根据实际情况写,比如:token、id等。把值放在变量中,供后续的请求使用。
  6. 正则表示式:用于解析响应数据的正则表达式。
  7. 模板:取一个数据的模板$1$,取两个数据的模板$1$$2$。
  8. 匹配数字(0代表随机):正则取出来的数据可能是多个,0代表随机一个。
  9. 缺省值:正则取不到数据,要展示的信息。

正则表示式:

    1. .点:匹配任何单个字符,除了\n\r之外
    2. +加号:匹配前面的子表示式一次或者多次
    3. ?问号:当该字符紧跟在任何一个其他限制符(*,+,?)后面时,匹配模式是非贪婪的,非贪婪模式尽可能少地匹配所搜索的字符串
    4. *星号:匹配前面的子表达式任意次
    5. ()小括号:将()之间的表示式定义为“组”,并且将匹配这个表示式的字符保存到一个临时区域

 

标签:匹配,请求,为例,正则表达式,抓取,响应,正则,jmeter
来源: https://www.cnblogs.com/90gk/p/15040722.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有