前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JMeter(十)-正则表达式关联

JMeter(十)-正则表达式关联

作者头像
飞天小子
发布2018-08-31 10:58:28
6590
发布2018-08-31 10:58:28
举报

jmeter中,接口自动化的关键在于参数关联。比如需要登录的接口,如何调用登录口令?一个增删改查的闭环,如何将接口参数上下传递?下面就以实际的例子来仔细说一说

1:登录接口

这里有一个实际的登录接口,在响应中返回了一串token,如下图

那么我们在接下来的接口-经验库列表中,就必须带入这一串token,否则响应报错,如下图所示   测试开发交流群 317765580

如何获取登录的口令呢?这里详细说明一下,如图所示   测试开发交流群 317765580

在接下来的接口中可以将获取的token作为变量调用,变量名为${center-token},如下图

观察请求头,发现传入了一串token,并且响应结果正确

 自此,一个完整的登录关联就结束了。后续接口直接调用该token就可以。我们接下来继续说其它的参数关联

比如一个增删改查流程,想要做自动化检验就必须形成一个闭环,那么删除-修改-查看就必须调用同一个必填参数,例如唯一性的id。下面还是实例演示   测试开发交流群 317765580

我先新增一个经验库,可以看到结果中返回了一个id,我在后续接口中都必须调用此唯一性的id

接下来写一个正则将其取出,注意与之前token正则的不同之处

后续接口可以调用此参数,并正确响应

好了,一个完整的登录-查看-删除的流程到这里就可以结束了~下面是结尾彩蛋

上述的正则都是获取单个的参数,那么如果要传入一组参数要怎么写呢?

修改正则表达式

结果中可以看到传入了一整个数组  

正则表达式简要说明:

()     括起来的部分就是需要提取的,对于你要提的内容需要用小括号括起来

.    点号表示匹配任何字符串

+   表示一次或多次匹配,*表示匹配所有

?   在找到第一个匹配项后停止,不加?表示找到最后一个匹配项停止

模板:用$$引用起来,如果在正则表达式中有多个正则表达式(多个括号括起来的东东),则可以是$2$,$3$等等,表示解析到的第几个值给user_id。例如:$1$表示匹配到的第一个值

匹配数字:0代表随机取值,-1代表所有值,此时提取结果是一个数组,其余正整数代表第几个匹配的内容提取出来。如果匹配数字选择的是-1,还可以通过${XX_1}的方式来取第1个匹配的内容,${XX_2}来取第2个匹配的内容

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-01-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档