【发布时间】:2012-05-30 16:18:06
【问题描述】:
我有两个 WebService(SOAP) 请求。两个 Web 服务调用的响应在结构上完全相同。对于 Web 服务调用编号 1,它具有以下结构,
<data xsi:type="soapenc:string">0</data>
<data xsi:type="soapenc:string">650</data>
对于网络服务调用号 2,它具有以下结构,
<data xsi:type="soapenc:string">0</data>
<data xsi:type="soapenc:string">10203</data>
在每个调用下,我都有一个正则表达式提取器。参考名称不同;但一切都定义完全一样。提取器有以下定义。
Apply to: Main Sample Only
Response Field to check: Body
Regular Expression: <data xsi:type="soapenc:string">(\d+?)</data>
Template: $1$
Match No.: 0
对于 Web 服务调用编号 1,提取器获取的值是 650,这正是我想要的。但是对于 2 号 Web 服务调用,提取器实际上得到的值为 0,这不是我想要的。我想在 Web 服务调用号 2 中得到 10203。我的问题是,为什么正则表达式提取器定义会返回两个不同的结果?
在此先感谢,
蒙特
【问题讨论】:
-
您为什么要尝试使用正则表达式解析 XML?这是个坏主意 (TM)...
-
我是 jMeter 的新手。在进行一些谷歌搜索时,其他一些人建议使用正则表达式,这就是我使用正则表达式的原因。你会推荐什么?
-
我没有使用 jMeter 的经验,但大多数语言都有 XML 库。