我需要一些帮助来使用正则表达式提取器获取值。我没有得到任何价值

时间:2015-04-06 12:42:56

标签: jmeter

我是JMeter的新手并且正在学习,使用正则表达式提取器进行练习。

我使用录音机创建了一个测试计划。我添加了一个正则表达式提取器,因为我想从我的网页上将“您的帐户”文本变为变量。

我使用调试采样器来检查我的变量是否在其中具有值“您的帐户”。 我在运行测试时看到变量中的默认值“your_account_NONE”。

我认为我的正则表达式是错误的。请指教,帮忙。感谢。

我知道测试运行时我在正确的页面上,因为我插入了一个响应断言,要测试的模式设置为“您的帐户” 断言通过。如果我将模式更改为“Your Accounttttttttttt” 断言失败了。所以我在正确的页面上。 我想将“您的帐户”值变为变量。

我的正则表达式有以下配置:

Reference Name: YourAccount
Regular Expression: <h1>"Your "   <span>Account</span> </h1>
Template: $1$
Match: 1
Default Value: your_account_NONE

我的测试计划如下:

Test Plan
   Thread Group
   Http Request defaults (Server Name: a URL to go to homepage)
   Recording Controller
      Http Cache Manager
      Http Cookie Manager
      Http request (sign in)
      http request (Homepage)
         Regular Expression Extractor
         Response Assertion

1 个答案:

答案 0 :(得分:1)

此问题的解决方案是使用正则表达式字符分组。然后在正则表达式提取器的“模板”部分中引用它们。

简单地将所需匹配的部分包裹在()中。

例如:

 Regular Expression: <h1>"(Your )"   <span>(Account)</span> </h1>

上面的行在“你的”和“帐户”周围放置了一个字符组。 然后,要将其构建到一个引用变量中,您希望“模板”为:

$1$$2$

这会将两个字符分组连接到变量“YourAccount”。