点击文末小卡片免费获取软件测试全套资料资料在手涨薪更快Jmeter用于接口测试时后一个接口经常需要用到前一次接口返回的结果应该如何获取前一次请求的结果值应用于后一个接口呢拿一个登录的例子来说明如何获取。1、打开jmeter新建一个测试计划在测试计划里新建一个线程组新建一个登录的http请求如图所示2、查看登录返回的结果3、充值接口需登录后才能操作此时可以使用cookie方式验证此用户已经登录在充值接口里添加cookie管理器这里的sign就是上一个登口接口返回的sign值4、在登录请求下新建一个后置处理器提取返回结果值5、查看接口运行结果总结以上就是jmeter的关联实现如果有其他的接口需要前一次请求的结果也可以添加的后置处理器提取变量作用于后一个接口中实现参数动态变化。关于正则表达式的举例说明1、提取单个字符串假如想匹配Web页面的如下部分name “file” value “readme.txt”并提取readme.txt。一个合适的正则表达式name “file” value “(.?)”。()封装了待返回的匹配字符串。.匹配任何单个字符串。一次或多次。?不要太贪婪在找到第一个匹配项后停止。2、提取多个字符串假如想匹配Web页面的如下部分name “file.name” value “readme.txt”并提取file.name和readme.txt。一个合适的正则表达式name “(.?)” value “(.?)”。这样就会创建2个组分别用于1 11和2 22比如引用名称MYREF模板1 112 22如下变量的值将会被设定MYREF: file.namereadme.txtMYREF_g0: name file.namevalue “readme.txt”MYREF_g1: file.nameMYREF_g2: readme.txt在需要引用地方可以通过${MYREF}, ${MYREF_g1进行使用。当请求之间有依赖关系比如一个请求的入参是另一个请求返回的数据这时候就需要用到关联处理Jmeter可以通过“后置处理器”中的“正则表达式提取器”来处理关联。简单的关联比如在访问百度首页时响应数据里面有一个title我就想在其他的请求中引用这个title 添加正则表达式提取器并设置如下添加一个关联请求来验证这个关联执行后我们看到关联成功了复杂一点的关联像取正则表达式结果里面多个值比如一个请求的响应数据如下我们尝试来提取0.084956.010193这四个数据添加正则表达式提取器做如下设置引用名称引用名称和引用的方法不用多解释和变量参数化差不多。正则表达式凡是要被引用的部分都替换成圆括号括号内具体的表达式您可以单独查阅正则表达式相关的知识。模板代表从正则表达式结果引用的样式其实结果是一组而不是一个。0 00代表这一组结果的全部1 11代表这一组结果的第1个以此类推1 112 22代表该正则表达式一组结果中的第1个和第2个俩结果挨在一起中间没有间隔3 33,4 44代表该正则表达式一组结果中的第3个和第4个俩结果间有一个逗号相连。匹配数字0代表正则表达式结果组中随机1代表全部。缺省值当引用不对时显示传递的信息通畅写一个ERROR。如上设置好正则表达式提取器后我们可以添加一个被关联的验证请求如下事实上myref_g0myref_g1…myref_g4 是正则表达式的结果组而myref才是被模板控制提取出来结果这里为了更清晰的观察正则表达式的结果组才在验证请求中添加这么多参数实际使用是用一个myref和模板配合就可以了。myref_g0{“rent”:0.0,“price”:84956.0,“totalprice”:1019,“roomType”:3}myref_g10.0myref_g284956.0myref_g31019myref_g431.模板 0 002.模板1 112 223.模板3 33,4 44另外对于匹配数字目前我只看到 0和1取其他整数的情况也许还有那一定是更复杂一点的情况。最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你凡事要趁早特别是技术行业一定要提升技术功底。