JMeter正则表达式提取器我想检查网页何时完成显示已完成的文本

时间:2015-03-31 13:13:13

标签: jmeter

我是JMeter的新手。我正在使用常规提取提取器,因为我想检查网页上是否显示“已完成”文本。 在页面上,我单击一个运行按钮。 该页面将处理一些数据和显示进度条。 我使用录像机捕获从登录到处理页面的所有步骤。 处理需要一些时间才能完成,我想检查完整消息何时出现。 这样我知道处理已经完成,因为我正在测试该页面的x个用户处理所需的时间。 我已将正则表达式提取器放在While循环控制器中。

正则表达式提取器我设置了以下值:

参考名称:已完成

正则表达式:div class =“”gwt-Label absoluteleft padding“> [已完成]

模板:$ 1 $

DefaultValue:无

我检查了网页,显示的html内容是:

<tdbody>
<tr>
<td>     
<div class=""gwt-Label absoluteleft padding">Completed.</div>
</td>
</tr>
</tdbody>

我是否正确完成了正则表达式以检查是否显示已完成的消息?

我认为我正在进行测试,因为看起来while控制器陷入无限循环。

我的设置是这样的:

Thread Group
- HTTP Request Defaults
- HTTP Cookie Manager
-Recording controller
- http requests (login, select project, go to processing page, run process)
- While controller
- http request (the page which does the processing)
- regular expression extractor
- Constant timer 

在While控制器中,我尝试将Condition字段设置为Completed值。 我运行它,它永远不会退出循环。

我想也许我需要一个断言来检查完成的消息何时出现然后它将退出。 我理解While循环将继续运行而true。当条件为假时,它将退出。

1 个答案:

答案 0 :(得分:0)

你可以在你的while控制器中发布这个条件吗?对于这种情况,while控制器可能非常困难。你可以尝试:

${__javaScript("${Completed}" == "Completed")}

${__javaScript("${Completed}" != "Completed")}

取决于您是希望在操作完成时还是在操作完成时执行While控制器。