1.在测试计划下面新建一个线程组,添加--》Threads-->线程组
2.在线程组下面添加一个http请求,添加--》Sampler-->HTTP请求
3.设置接口请求参数,如下图所示,本文以一个查询接口为例。


现在我们的目的是提取出响应数据里的tid,通过编码再次组装参数发送请求(一个线程执行一次)。
4.提取数据需要用到正则表达式提取器,添加--》后置处理器->正则表达式提取器

正则表达式提取器详解:
·引用名称:即参数名称,即用来存储正则表达式所提取的值。
·正则表达式:就是用来匹配服务器响应的数据。
一般值的名称(键)是不会发生改变的。要获取特定的数据,都会结合不变的内容(左右边界),然后
将需要提取的服务器数据替换为(.*?)即可。
PS:建议在查看结果树中,切换到regexp tester模式,对所写的正则表达式进行测试。
·模板:该处可以填写常量字符串或者位置变量$N$,该属性的作用是用来指定最终存储到参数中的值。
·常量:表示将常量的值赋给参数。
·$N$:表示将第N对括号的值赋给参数。
·$1$就表示将正则表达式中的第一对括号所对应匹配到的值赋值给参数。
·匹配数字:该处可以填写的是正整数N,数字0,负数三种。
·正整数N:就表示将第N次匹配(查找到)到的值赋值给参数。默认值是1.
·数字0:就表示将所匹配到的值随机提取一个赋值给参数。
·负数:通常是-1,就表示将所有匹配到的值以类似于数组的方式存入参数数组。
PS:如果匹配数字为-1,就表示希望对所有数据进行遍历操作。此时需要结合Jmeter的逻辑控制器
-foreach 控制器来实现遍历操作。
5.foreach控制器,添加--》逻辑控制器--》ForEach控制器

6.再新建一个http请求

7.结果如下,每个线程获取固定的值然后发送请求

网友评论