我在表格中有一个链接列表。表格中的一个链接如下所示:
<a href="/hix/entity/assisteradmin/viewassisterinformation?assisterId=CSyTid9fDmtJ4OqoMA3mvA">
A1 Counselor
</a>
在JMeter中的HTML响应中。
我试图通过JMeter从HTML响应的href链接文本中获取assisterId(CSyTid9fDmtJ4OqoMA3mvA)的值。
有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
我不熟悉JMeter,但从xpath的角度来看,您可以尝试使用substring-after()
函数来提取"assisterId="
之后发生的文本,如下所示:
substring-after(//a/@href, 'assisterId=')
在上面的HTML片段作为输入的情况下,在xpath tester输出:
String='CSyTid9fDmtJ4OqoMA3mvA'
答案 1 :(得分:1)
根据 har07 的回答,您可以使用XPath extractor作为HTTP请求采样器的子项,从中获取链接列表。
XPath提取器的主要缺点是,如果返回Tidy错误,它将无法正常工作。
请考虑使用Regular Expression extractor,因为如果您的正则表达式与服务器返回的HTML响应匹配,它将始终有效。
在您的情况下,正则表达式和其他正则表达式提取器参数将类似于:
ASSISTER_ID
<a href=".*?viewassisterinformation\?assisterId=(.*?)">
ASSISTER_ID
中的正则表达式的捕获组):$1$
1
REGEX_FAILED
如果您要处理列表中的所有链接,请将匹配编号设置为-1
,并将其与ForEach Controller一起使用。
答案 2 :(得分:0)
您可以通过Regular Expression Extractor获取此值:
按如下方式配置:
assisterId
<a href="/hix/entity/assisteradmin/viewassisterinformation\?assisterId=(.+?)">
$1$
${assisterId}
有关使用正则表达式在JMeter中进行关联的更多详细信息,请参阅USING REGULAR EXPRESSION EXTRACTOR指南。