本文介绍: myref_g4 是正则表达式结果组,而myref才是被模板控制取出来结果,这里为了更清晰的观察正则表达式的结果组才在验证请求添加这么多参数,实际使用是用一个myref模板配合就可以了。总结:以上就是jmeter关联实现,如果有其他的接口需要一次请求的结果,也可以添加的后置处理器提取变量,作用于一个接口中,实现参数动态变化。用于接口测试时,后一个接口经常需要用到一次接口返回的结果,应该如何获取一次请求的结果值,应用于后一个接口呢,拿一个登录例子说明如何获取


用于接口测试时,后一个接口经常需要用到一次接口返回的结果,应该如何获取一次请求的结果值,应用于后一个接口呢,拿一个登录例子来说明如何获取

1、打开jmeter新建一个测试计划,在测试计划新建一个线程组,新建一个登录http请求如图所示

图片

2、查看登录返回的结果:

图片

3、充值接口需登录后才能操作,此时可以使用cookie方式,验证此用户已经登录,在充值接口里添加cookie管理器

图片

图片

这里sign就是上一个登口接口返回sign值,

4、在登录请求下新建一个后置处理器提取返回结果值:

图片

图片

图片

5、查看接口运行结果:

图片

图片

总结:以上就是jmeter关联实现,如果有其他的接口需要一次请求的结果,也可以添加的后置处理器提取变量,作用于后一个接口中,实现参数动态变化。

关于正则表达式的举例说明:

1、提取单个字符串

假如想匹配Web页面如下部分:name = “filevalue = “readme.txt”>并提取readme.txt。一个合适的正则表达式name = “filevalue = “(.+?)”>。
      ():封装了待返回匹配字符串
      .:匹配任何单个字符串
      +:一次多次
      ?:不要太贪婪,在找到第一个匹配项后停止。

2、提取多个字符串

假如想匹配Web页面如下部分:name = “file.namevalue = “readme.txt”>并提取file.namereadme.txt。一个合适的正则表达式name = “(.+?)” value = “(.+?)”。这样就会创建2个组,分别用于 1 1 1和 2 2 2

比如

引用名称:MYREF

模板: 1 1 1 2 2 2
   如下变量的值将会被设定:
    MYREF:     file.namereadme.txt
    MYREF_g0:   name = “file.namevalue = “readme.txt
    MYREF_g1:  file.name
    MYREF_g2:  readme.txt

在需要引用地方可以通过:${MYREF}, ${MYREF_g1进行使用

当请求之间有依赖关系,比如一个请求的入参是另一个请求返回的数据,这时候就需要用到关联处理,Jmeter可以通过“后置处理器”中的“正则表达式提取器”来处理关联

简单的关联

比如访问百度首页响应数据里面有一个title

我就想在其他的请求中引用这个title 添加正则表达式提取器并设置如下

图片

加一个关联请求来验证这个关联:

图片

执行我们看到关联成功了

图片

复杂一点的关联,像取正则表达式结果里面多个

比如一个请求的响应数据如下

图片

我们尝试来提取0.0,84956.0,1019,3这四个数据,添加正则表达式提取器做如下设置

图片

引用名称:引用名称和引用的方法,不用多解释,和变量参数化差不多。

正则表达式:凡是要被引用的部分都替换成圆括号括号内具体的表达式您可以单独查阅正则表达式相关的知识

模板:代表从正则表达式结果引用的样式,其实结果是一组,而不是一个。 0 0 0代表这一组结果的全部, 1 1 1代表这一组结果的第1个,以此类推;

1 1 1 2 2 2代表该正则表达式一组结果中的第1个和第2个,俩结果挨在一起中间没有间隔

3 3 3, 4 4 4代表该正则表达式一组结果中的第3个和第4个,俩结果间有一个逗号相连。

匹配数字:0代表正则表达式结果组中随机,1代表全部。

缺省值:当引用不对时显示传递的信息,通畅写一个ERROR。

如上设置正则表达式提取器后,我们可以添加一个被关联的验证请求,如下

图片

事实上,myref_g0,myref_g1…myref_g4 是正则表达式的结果组,而myref才是被模板控制取出来结果,这里为了更清晰的观察正则表达式的结果组才在验证请求中添加这么多参数,实际使用是用一个myref和模板配合就可以了。

myref_g0={“rent”:0.0,“price”:84956.0,“totalprice”:1019,“roomType”:3}
myref_g1=0.0
myref_g2=84956.0
myref_g3=1019
myref_g4=3

1.模板 0 00

图片

2.模板 1 1 1 2 2 2


3.模板 3 3 3, 4 4 4

另外对于匹配数字,目前我只看到 0和1,取其他整数的情况也许还有,那一定是更复杂一点的情况。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

原文地址:https://blog.csdn.net/qq_48811377/article/details/134577249

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_15043.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注