• Jmeter日常通过beanshell 提取Mail Reader Sampler中的验证码,多层级参数化


    上一篇文章说到通过:prev来读取响应,

    本文结合通过 beanshell 提取Mail Reader Sampler中的验证码

     https://www.cnblogs.com/shoebill/p/16140538.html

    Mail Reader Sampler的使用:

    邮件读取取样器:作用是通过发件邮箱读取邮件内容

    下面通过注册用户,获取邮箱验证码为栗子

    配置:

     结果:

     观察运行结果是有层级的,跟HTTP等请求不一样,通过常用的JSON,XPATH,正则提取是没有用的

    Beanshell 提取:

    方法就是上一篇文章介绍的:prev提取响应结果,其中有对返回的子响应进行获取

    具体:

     String  response =prev.getSubResults()[0].getSubResults()[0].getResponseDataAsString();
    #getSubResults():第一个获取第一层,第二次获取第二层,
    #getResponseDataAsString():获取最底层的数据并保存为String类型
    
    int len = response.length();
    #因为验证码在最后,可以通过长度来获取,
    #或者直接打验证码的角标起始和结束的角标
    vars.put(
    "response",response.substring(len-6,len)); #赋值给到response,后续可以通过${response}调用

    结果:

    参考:

    https://blog.csdn.net/jackYangyang/article/details/53102409

  • 相关阅读:
    六种排序
    洛谷 P1879 [USACO06NOV]玉米田Corn Fields
    [USACO06NOV]玉米田Corn Fields
    c++位运算符 | & ^ ~ && ||,补码,反码
    Blockade(Bzoj1123)
    割点(Tarjan算法)【转载】
    子串
    生命是什么
    怎样说话才打动人
    自控力
  • 原文地址:https://www.cnblogs.com/shoebill/p/16144309.html
Copyright © 2020-2023  润新知