如果我有两个相同的标签和相同的属性,唯一的区别是值,我该如何提取第二个?
<data xsi:type="soapenc:string">0</data>
<data xsi:type="soapenc:string">1</data>
我尝试过以下操作。
<data xsi:type="soapenc:string">0</data><data xsi:type="soapenc:string">(.+?)</data>
并将值分配给myID。但是当我在脚本中输入$ {myID}时,它使用字符串“$ {myID}”而不是实际值。提取不起作用吗?或者我需要为它使用不同的变量吗?
我有一个不同的采样器,我只有一个标签。例如,
<data xsi:type="soapenc:string">0</data>
当我这样做时,
<data xsi:type="soapenc:string">(.+?)</data>
并分配给myAnotherID,我可以使用$ {myAnotherID},该值将在脚本中使用。
那么,为什么$ {myID}不会返回值?
提前致谢, 蒙
答案 0 :(得分:5)
使用单个表达式 - <data xsi:type="soapenc:string">(.+?)</data>
- 来获取所有匹配项
如果有多个匹配,jmeter将根据您尝试提取的变量名称为每个匹配生成特定变量 - 例如refName_N
:myAnotherID_1,myAnotherID_2,...,myAnotherID_N。<登记/>
然后,您可以通过相应的变量(在您的示例中为myAnotherID_1)引用所需的值。
JMeter Variables = true
一起使用,以查看提取批量值时生成的所有变量。希望这有帮助。