如何使用Jmeter的正则表达式提取响应。
Jmeter没有提取我想要提取的响应项。我已经尝试了几次,但我失败了。如何提取响应项?
响应数据如屏幕截图所示:
我需要提取的值已经突出显示。
我尝试使用以下表达式进行提取,但失败了:
<h2>.+?<a hfref="http://(.+?)">.+?</a>.</h2>
答案 0 :(得分:0)
取决于可以产生的变化(我的意思是,表单是如何变化的?是只有查询字符串ID参数不同吗?可能有另一个响应(比移动对象)带有您不喜欢的ID ; t想解析?等。),常规Expession Extractor Post-Processor中的正则表达式(这里最适合)会有所不同。
从最简单的上下文无关,Id=(\d+)
(考虑到您有数字ID),使其不区分大小写(?i)Id=(\d+)
和/或字母数字Id=([0-9a-zA-Z]+)
,甚至是任何符号都是in(但在这种情况下,您将被迫开始包含上下文)Id=(.+?)&
- 最多使用更广泛的上下文来评估整个多行内容,例如(?im)<title>Object\smoved</title>.+<a\shref=.+Id=(\d+)
并且不要忘记使用$1$
作为模板并参加第1场比赛。
我建议你坚持使用你能负担得起的最狭隘和最不受环境影响的人(这里的第一个例子)。 添加一些断言以确保您处于正确的页面上 - 尽管它们是在后处理器之后执行的,但您至少看到了一些错误。
答案 1 :(得分:0)