4

我的测试中的响应数据有这一行:

<head><title>
    My Title
</title><meta charset

我在 Jmeter 的内置正则表达式测试器中检查了这个正则表达式,它找到了标题。

(?m)(?is)<title>\n\tMy Title\n</title>

但是,当我将它用作响应断言时,断言总是失败。

我已经尝试了“应用到”部分中的所有设置。为“要测试的响应字段”选择了“文本响应”。我为“模式匹配规则”选择了“包含”。

我对正则表达式提取器也有一个非常相似的问题 - 选定的表达式在测试器中通过,但在正则表达式提取器中失败。

我相信这可能与响应的多线性质有关。

任何指针?

4

3 回答 3

4

尝试使用:

(?<=<title>\s*)(\S.+\S)(?=\s*</title>)查找任何标题

(?<=<title>\s*)(My Title)(?=\s*</title>)查找“我的标题”

于 2012-07-01T09:39:36.423 回答
2

尝试以下操作:

Regular Expression: <title>(.+?)</title>
Template: $1$
Match: 1
于 2012-12-11T11:59:48.783 回答
0

尝试改用xpath

使用 expression like//title/text()XPath Extractor - 来提取标题值, - 和 expression like和XPath Assertion//title[text()='My Title']一起使用。

在这两种情况下,您都必须确保选中 Use Tidy(容错解析器)选项 - 因为您正在解析 HTML(不是 XML!..)响应。

于 2012-07-01T09:04:29.193 回答