软件测试攻略(十六):Jmeter进阶_if控制器&正则表达式提取器

一、Jmeter之if控制器&正则表达式提取器

前一课的思考解答。
场景:
用户在注册页面输入用户名时,
如果是已存在的用户名会跳转到登录页面进行登录,进入查询页面。
如果是不存在的用户名就会进行注册,再跳转到登录页面进行登录,进入查询页面。
是两个不同的流程,如何控制用户名的效验结果不同时,走不同的流程呢,这里要用到Jmeter的if控制器。

(1)抓取用户效验请求:

  • 在注册页面随便输入一个用户名,用Fiddler抓包


    image.png

    image.png
  • 用前面学过的,使用黑夜小怪插件,将Fiddler抓包数据导入Jmeter
  • 跑一次,看到用户效验的响应报文如下:


    image.png
  • 当注册用户名是已存在的用户名时,响应报文如下


    image.png
  • 可以通过判断用户效验的响应报文字段,来控制要走的流程。


    灵魂画手.png

(2)if控制器

  • 添加:线程组添加-逻辑控制器-如果(if)控制器


    image.png
  • 我们可以看到if控制器是要填写条件的,我们的条件是根据响应报文的字段中提取。需要与正则表达式提取器搭配使用


    image.png

(3)正则表达式提取器

  • Jmeter里的正则表达式提取器的作用是提取响应报文的某个字段存在变量中。


    image.png
  • "respDesc":"(.*?)"}
    括号可以看做定位,左边字段是左边界,右边字段是右边界。
    还记得我们要根据什么来控制if的判断吗?


    image.png

我们截取含有需要判断的部分 "respDesc":"成功"} 作为响应报文中需要判断的字段,把需要判断的“成功”改为(.*?),就得到我们的正则表达式。

即:把需要提取的字符串前后都复制下来,保证其他部分是不变的,然后需要提取的字符串用(.*?)代替

  • 在if控制器里填:


    image.png

if控制器的条件是正则表达式中的result等于'成功'时。

  • 把满足条件要走的流程放在if控制器内部


    image.png
  • 复制上面流程,把if条件改为不等于成功,再把注册接口删除。就完成我们第二条流程。


    image.png
  • 当然此处有些不严谨,因为用户名效验为已存在的用户名,但是其实可能并不是我的账号,我们暂定情景流程是按文章开头来的。

二、正则表达式拓展

正则表达式,又称规则表达式。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

  1. 匹配字符
    [ ] 匹配这个范围内的任意字符;如,[a-z]匹配小写字母a到z这个范围的任意字符
    . 匹配任意字符;
    \w 匹配字母或数字、或下划线。
    \W 匹配除英文、数字外的字符
    \d 匹配0-9,等价[0-9]
    \D 匹配除数字外的字符

  2. 匹配表达式的次数
    ? 匹配表达式0-1次
    * 匹配表达式0到无穷次
    + 匹配表达式1到无穷次
    {m,n} 匹配表达式m到n次
    {m, } 匹配表达式m到无穷次

3.贪婪模式
贪婪模式在整个表达式匹配成功的前提下,尽可能多的匹配。与之相反的是,非贪婪模式,非贪婪模式在整个表达式匹配成功的前提下,尽可能少的匹配。在匹配优先量词后加上“?”,就是非贪婪模式。

4.实例

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 和睦一家人,孝亲爱长辈。兄弟相扶持,姐妹不离分。有难共担当,福气盈家门! ――卫氏家风 傍晚,夕阳暖暖地铺洒着,矗...
    0镜花水月0阅读 59,640评论 1 2
  • 幸福是需要修出来的~每天进步1%~幸福实修14班~ 金包玉组D32(32/60) 【幸福实修目标】本周目标:同事、...
    蒋莺华阅读 178评论 0 1
  • 我已经在家休息很久了,找不到方向。就拿着身边随处可用的笔动起了手,不知道怎么开始。
    婧LaoBan阅读 282评论 0 0
  • 最近越来越在意原本就不喜欢的人过得舒适或者付出少而获得多,直接影响了自己的情绪,长期让自己沉浸在阴天的郁郁寡...
    糯米肉肉阅读 346评论 0 0
  • 点燃一根火柴 划过墨蓝的天空 举起一杯美酒 让星星在里面荡漾 凝视一双眼睛 期待灵魂的光 这些 都不是我的流星 正...
    ZJL的猫阅读 240评论 0 5

友情链接更多精彩内容