有人可以帮我吗?我试图在Jmeter中做一个http帖子,http工作正常,但是我想从响应中提取LastName值以便在下一个http请求中使用。我已经尝试了几种使用Xpath Extractor的方法,但Debug sampler没有显示任何内容。我已经将XPath_Extractor添加为HTTP Sampler的子代。 我在这做错了什么?
以下是我在XPath Extractor中设置的内容
引用名称= lstname(这是我携带到下一个http请求的变量)
XPath Query = // * [local-name()=' LastName'] / text()
也尝试了
/答复/ CustomerData / @名字
检查主样品
使用NameSpaces-checked
检查Ingnore whitepspace
这是我的http回复
<?xml version="1.0" encoding="UTF-8"?>
<dm:reply xmlns:dm="http://www.xx.com/dm" version="1.0">
<Session>
<TimeDate CurrentDateTime="2015-12-16T08:57:21" CurrentMilliseconds="2881062362"/>
<Reply type="Connection">
<ErrorMessage/>
<ErrorCode>0</ErrorCode>
</Reply>
<TimeDate CurrentDateTime="2015-12-16T08:57:21" CurrentMilliseconds="2881062504"/>
<Reply type="Execute">
<CustomerData FirstName="" LastName="Moni" Address="SD" Chassis="AWD" CountryOfBirth="" CountryOfOriginFullName= Year="2010">
<RecordSet>
</RecordSet>
<ErrorMessage/>
<ErrorCode>0</ErrorCode>
</CustomerData>
</Reply>
<TimeDate CurrentDateTime="2015-12-16T08:57:21" CurrentMilliseconds="2881062590"/>
</Session>
</dm:reply>
答案 0 :(得分:0)
您可以使用正则表达式提取器 - 后处理器来实现此目的。
您需要填写以下参数
在下一个请求中使用$ {LastName}来访问LastName的提取值。 添加调试采样器以检查是否正在提取正确的值。
答案 1 :(得分:0)
为什么你需要所有这些命名空间的东西?
//CustomerData/@LastName
作为XPath表达式顺便说一下,您可以使用View Results Tree侦听器的XPath Tester模式直接针对响应评估XPath表达式。有关深入了解JMeter测试问题的更多提示,请参阅How to debug your Apache JMeter script文章。