jmeter正则表达式+ForEach 控制器,遍历请求接口

场景:
        批量删除目录名称为lynauto-dir开头的所有目录


实现方式:
        查询目录信息,使用正则表达式提取lynauto-dir开头的目录名,然后使用ForEach Controller遍历变量数组,进行循环删除。


实现步骤:
    1.查询目录接口请求,解析响应并提取name信息:

    2.查询目录接口添加正则提取器,右键单击“线程组”>“添加”>“后置处理器”>“正则表达式提取器”
提取lynauto-dir开头的目录名:

正则表达式提取器说明:
    Apply to:应用范围
    要检查的响应字段:样本数据源
    引用名称:其他地方引用时的变量名称,我这里写的dir,可自定义设置,引用方法:${引用名称}
    正则表达式:数据提取器,()括号里为你要获取的的值。"name":"( 相当于LR左边界, )","相当于LR右边界。而括号里是正则表达式,用来匹配所需要获取的数据
    模板:$$对应正则表达式提取器类型。-1全部,0 随机,1第一个2第二个,以此类推,若只有一个正则一般就填写$1$
    匹配数字:正则表达式匹配数据的所有结果可以看做一个数组,匹配数字即可看做是数组的第几个元素。-1表示全部,0随机,1第一个,2第二个,以此类推。若只要获取到匹配的第一个值,则填写1
    缺省值:匹配失败时的默认值。可以不写。若需用于后续逻辑判断,可简单写为 ERROR

    3.添加调试取样器,右键单击“线程组”>“添加”>“取样器”>“调试取样器”
    查看正则提取到的参数:

    4.添加ForEach控制器,右键单击“线程组”>“添加”>“逻辑控制器”>“ForEach控制器”

ForEach控制器说明:
    输入变量前缀:输入正则表达式变量的引用名称
    开始循环字段:默认为0
    结束循环字段:最大索引值
    输出变量名称:存储每次遍历获取值,供其它地方引用
    默认勾选数字之前加上下划线"_"

5.在ForEach控制器里添加删除目录请求,可遍历请求接口删除
查看结果:

 

posted @ 2022-02-23 10:13  Sunmer09  阅读(218)  评论(0编辑  收藏  举报