Jmeter-正则表达式提取器获取token-小实例
Posted chengchengla1990
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter-正则表达式提取器获取token-小实例相关的知识,希望对你有一定的参考价值。
步骤一:在需要获取token的接口上,添加正则表达式提取器
说明:
(1)引用名称:下一个请求要引用的参数名称,如填写title,则可用${title}引用它。
(2)正则表达式:
():括起来的部分就是要提取的。
.:匹配除换行符以外的任意字符
+:重复一次或更多次
?:重复零次或一次,在找到第一个匹配项后停止
*:重复零次或更多次
(3)模板:用$$引用起来,如果在正则表达式中有多个正则表达式,则可以是$2$$3$等等,表示解析到的第几个值给token。如:$1$表示解析到的第1个值
(4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0
(5)缺省值:如果参数没有取得到值,那默认给一个值让它取
步骤二:使用获取到的token值。添加HTTP Cookie管理器
说明:
- 名称:对该 Cookie管理器的自定义概述
- 注释:对该 Cookie管理器的详细描述
- 每次反复清除Cookies?:选择后,则每次线程组运行时,都会清除 cookie。PS:若是手动添加的cookie,则不会被清除。
- Implementation:履行的协议。
- Cookie Policy:Cookie的管理策略。有如下几种可选项:
- compatibility:推荐选择此种策略。这种兼容性设计要求是适应尽可能多的不同的服务器,尽管不是完全按照标准来实现的。如果你遇到了解析 Cookies 的问题,你就可能要用到这一个规范。有太多的web站点是用CGI脚本去实现的,而导致只有将所有的 Cookies 都放入 Request header 才可以正常的工作。这种情况下最好设置 http.protocol.single-cookie-header 参数为 true。
- rfc2109:是HttpClient使用的默认Cookies协议。
- rfc2965:定义了版本2并且尝试去弥补在版本1中 Cookie 的 RFC2109 标准的缺点。规定 RFC2965 最终取代 RFC2109 发送 RFC2965 标准 Cookies 的服务端,将会使用 Set-Cookie2 header 添加到 Set-Cookie Header 信心中,RFC2965 Cookies 是区分端口的。
- ignorecookies:此规格忽略所有 Cookie。被用来防止 HttpClient 接受和发送的 Cookie。
- netscape:是最原始的 Cookies 规范,同时也是 RFC2109 的基础。尽管如此,还是在很多重要的方面与 RFC2109 不同,可能需要特定服务器才可以兼容。
- default:默认。
6.存储在Cookie管理器中的Cookie
名称:参数的名称,如本例中名称是 _security_token
值:参数的值,如本例中值是从步骤一的正则表达式中的${token}
域:使用到该cookie的域名,如本例中则是多图模板这个接口的域名
运行结果:
实践过程中遇到的问题:
以上是关于Jmeter-正则表达式提取器获取token-小实例的主要内容,如果未能解决你的问题,请参考以下文章