一、以飞机订票系统【webtours】的登录功能为例

【成功标志】

运行成功后查看结果树,login接口的HTML网页界面应提示:【Welcone,用户名,to the Web Tours reservation pages.】

【问题描述】

使用jmeter工具录制脚本,保存运行之后查看结果树,发现运行成功,查看结果树login接口的HTML网页界面:无欢迎用户名进入字样,即登陆失败
在这里插入图片描述

【分析原因】

在请求中会有类似于认证信息的字段,每个用户、每个时间段等等产生的字段都不一致,如果完全按照录制脚本时的数据的话会导致一些认证过期,回放无法成功的问题,这时候需要做个标记,让jmeter理解这部分的内容不从录制好的脚本中获取,需要重新从网页中获取。

【解决办法】

(1)在带参数的login接口中找到参数【userSession】,确认每次登录该参数都会发生变化
在这里插入图片描述

(2)运行后在结果树中搜索这个参数【userSession】
在这里插入图片描述

(3)在上图查到参数【userSession】的接口下新增一个正则表达式提取器,如图所示设置
在这里插入图片描述
(4)编辑带参数的login接口中的参数【userSession】的值为刚刚定义的正则表达式的引用名称
在这里插入图片描述
(5)保存,运行,查看结果树,出现登陆成功界面
在这里插入图片描述

  • 注:此方法仅适用于使用工具【badboy】录制的jmeter脚本,当使用工具【jmeter】录制同样的登录脚本并进行同样操作时,登录仍然是不成功状态,原因暂时未知。

二、以【悟空crm】系统的【进入首页、登录、退出】功能为例

【成功标志】

运行成功后查看结果树,无异常提示

【问题描述】

运行成功后查看结果树,报状态码302,即网页已经重定项
在这里插入图片描述

【分析原因】

同上

【解决办法】

(1)在带报状态码302的接口中找到参数【Admin-Token】,确认每次登录该参数都会发生变化
在这里插入图片描述
(2)运行后在结果树中搜索这个参数【Admin-Token】,复制参数及值
在这里插入图片描述

(3)在搜索到参数【Admin-Token】的接口,即图示【/login-15】接口下添加一个正则表达式提取器,粘入刚刚复制的参数和值,将值替换为【(.?)】*
在这里插入图片描述
(4)在接口下找到内容最全的【HTTP信息头管理器】,找到参数【Admin-Token】,将其值替换为刚刚设置的正则表达式名称
在这里插入图片描述

在这里插入图片描述

(5)将设置好的【HTTP信息头管理器】放到整个线程组目录下,相当于作用为全局变量,同时将其他接口下的【HTTP信息头管理器】都删除
在这里插入图片描述

(6)再次运行,查看结果树,不再报302
在这里插入图片描述

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐