Jmeter - 将整个查询字符串转换为变量

时间:2010-03-05 20:27:33

标签: regex jmeter

有没有办法使用正则表达式提取器来获取整个.NET加密查询字符串并将其放在变量中?

示例,对于通过GET的URL:

https:/www.website.com/folder/page.aspx?jfhjHSDjgdjhsjhsdhjSJHWed

我正在尝试${myQueryString} = jfhjHSDjgdjhsjhsdhjSJHWed所以我可以稍后在测试计划中重播它,方法是将变量附加到将来的GET中。

2 个答案:

答案 0 :(得分:2)

第一个问题,你从哪里获得GET网址,你是从http请求中提取它吗?

如果您仍然使用“硬编码”或jmeter变量,您可以将beanshell采样器添加到测试用例中并添加以下代码:

vars.put("queryParams","${__javaScript(/\?(.*)$/.exec('http://stackoverflow.com/questions/2389738/jmeter-get-entire-query-string-into-variable?testqueryparameter=&anotherqueryparam=IhavesomeValue')[1],)}");

我使用http://stackoverflow.com/questions/2389738/jmeter-get-entire-query-string-into-variable?testqueryparameter=&anotherqueryparam=IhavesomeValue来测试此案例。

变量queryParams中的结果存储为testqueryparameter=&anotherqueryparam=IhavesomeValue

那是你在找什么?

答案 1 :(得分:1)

(?<=\?)[^?]+$

将匹配字符串中最后一个?之后的所有内容。我希望这就是你的意思。