我遇到了一个问题,需要你的帮助来解决这个问题。
我正在测试的网页有很多字段,其中有一些重复字段。 这些字段之一是具有不同数量选项的选择列表。有时它只有 1 个选项(“默认”),有时它有 2 个选项(“默认”和“自定义”)。为了进一步处理此请求,我只对那些选择了“自定义”选项值的选择列表感兴趣。因此,如果选择列表选择了“默认”,那么我想忽略它。但我只想提取那些选择“自定义”选项的字段。在这种情况下,我想提取选择列表名称和选项的值。
页面中的选择列表如下所示:
<select id="delOpt1" name="delOpt1" class="dd">
<option select="selected" value="1406">Default</option>
</select>
<select id="delOpt2" name="delOpt2" class="dd">
<option value="13987">Default</option>
<option selected="selected" value="18902">Custom</option>
</select>
<select id="delOpt3" name="delOpt3" class="dd">
<option value="2101">Default</option>
<option selected="selected" value="21921">Custom</option>
</select>
<select id="delOpt4" name="delOpt4" class="dd">
<option select="selected" value="3232">Default</option>
</select>
所以在这种情况下我只想提取以下两个:
- delOpt2=218092
- delOpt3=21921
到目前为止,我只能提取选择名称或选项值,但不能同时提取两者。我尝试过 XPath Extractor、CSS/JQuery Extractor 和正则表达式提取器。但他们一次只能提取 1 个值。即使我使用 2 个不同的提取器并将值存储在 2 个变量中,我也无法将选择名称与选项值关联起来。
我得到了所有选择列表,例如:
CSS/JQuery Extractor
Reference: delOptSelectName
CSS/JQuery expression: select[class=dd]
Attribute: name
Match No.: 1
Default Value: NOTFOUND
这给了我
Match[1]=delOpt1
Match[2]=delOpt2
Match[3]=delOpt3
Match[4]=delOpt4
我可以获得所有选项值,例如:
CSS/JQuery Extractor
Reference: optionValues
CSS/JQuery expression: select[class=dd] option
Attribute: value
Match No.: 1
Default Value: NOTFOUND
这给了我
Match count: 6
Match[1]=1406
Match[2]=13987
Match[3]=18902
Match[4]=2101
Match[5]=21921
Match[6]=3232
或者我只得到那些被选择的选项
CSS/JQuery Extractor
Reference: optionValues
CSS/JQuery expression: select[class=dd] option[selected=selected]
Attribute: value
Match No.: 1
Default Value: NOTFOUND
这给了我
Match count: 4
Match[1]=1406
Match[2]=18902
Match[3]=21921
Match[4]=3232
现在我有 4 个选择列表和 4 个选项,但是如何比较哪些选项值属于那些选项为“自定义”的值,并且如何获取选择名称?
任何解决此问题的指示都将受到高度赞赏。
谢谢。
-赫马尔
最佳答案
我会选择以下 XPath 表达式:
//select/option[text()='Custom']/../@name | //select/option[text()='Custom']/@value
它会返回类似的内容
option_1=delOpt2
option_2=18902
option_3=delOpt3
option_4=21921
因此奇数将是选择名称,偶数是选项值。
有关 XPath 语言的更多信息,请参阅 XPath specification , XPath Tutorial和 Using the XPath Extractor in JMeter指导。
关于jquery - 在JMETER中,如何根据特定文本提取选择名称和选项值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29446329/