背景
    很多情况下我们压测一个接口,需要在登录账号的前提下进行操作。
    解决
    获取并设置全局的cookie,添加到接口请求参数中。

    步骤

    1. 添加setup线程组

    image.png
    image.png

    1. 设置登录接口的http请求取样器
    2. 添加后置处理器——正则表达式处理器,设置提取cookie

    引用名称:ssotoken(即将引用的全局cookie变量名称)
    正则表达式:Set-Cookie:(.+)
    ()__:表示将提取的部分内容
    .__:匹配任何字符串
    +__:一次或者多次
    ?__:在找到第一个匹配后停止
    模板:用$1$引用起来,多个匹配值可用$1$2$3$表示,分别表示解析到的第几个值
    匹配数字(0表示随机):0代表随机取值,1代表全部取值
    缺省值:如果参数没有取到值,则为默认缺省值

    image.png

    1. 添加后置处理器——BeanShell PostProcessor,设置全局cookie

    参数:${ssotoken}(即为正则提取器填写的变量名称)
    Script:
    语法格式:${__setProperty(其他线程引用的变量名,${正则提取器填写的变量名称},)};
    image.png

    5.在要测试的目标接口的请求头参数中添加全局cookie
    语法:Cookie:${__property(newtoken)}
    ${__property(BeanShell处理器设置的参数变量)}
    image.png