如何在JMeter中使用正则表达式提取器提取某些值?
如果我有两个相同的标签和相同的属性,唯一的区别是值,我该如何提取第二个?
<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}不返回值呢?
在此先感谢,蒙特
回答:
使用单个表达式– <data xsi:type="soapenc:string">(.+?)</data>
获取所有匹配项。
如果有多个匹配项,jmeter将根据您尝试提取的变量名称为每个匹配项生成特定的变量-如refName_N
:myAnotherID_1,myAnotherID_2,…,myAnotherID_N。
然后,您可以通过相应的变量(示例中的myAnotherID_1)引用所需的值。
- 查看正则表达式提取器参考以获取匹配号说明。
- 您还可以使用Debug Sampler和
JMeter Variables = true
来查看提取一批值时生成的所有变量。 - 在没有ForEach Controller的情况下,请查看这篇文章以循环遍历多个RegExp Extractor输出值。
希望这可以帮助。
以上是 如何在JMeter中使用正则表达式提取器提取某些值? 的全部内容, 来源链接: utcz.com/qa/432622.html