断言使用selenium IDE从下拉列表中未选择任何值

时间:2009-04-22 13:27:17

标签: ajax selenium

我有这样的场景:使用带有清除(重置该表单)按钮的Ajax处理的简单HTML表单。我想测试clear函数,因此问题是:检查没有从Selenium IDE的drop-down列表中选择任何值的正确方法是什么?

我已尝试assertSelectedValue命令,但未找到指定未选择值的方法。所以我切换到assertValue命令,该命令与输入字段和复选框平滑。但是将它用于下拉列表是否正确?即使测试通过指定的dropdown列表ID作为目标而空白字段作为值,我仍然无法摆脱某种错误的感觉。

非常感谢任何澄清。

4 个答案:

答案 0 :(得分:1)

可能会有点迟,但通常会在选择选项时为选项提供选择=“已选择”的属性。这在使用多选组合框时特别适用,其中也不能选择任何选项。

因此,要测试是否未选择任何选项,请执行以下操作:

verifyElementNotPresent   
xpath=//select[@id="xxx"]/option[@selected="selected"]

如果未选择任何选项,则输出为true,否则为false。

对于报告,您可以使用storeElementNotPresent。 您也可以使用verifyElementNotPresent

代替assertElementNotPresent

答案 1 :(得分:0)

好像我已经迟了几个月了,但是如果你还在考虑这个问题:

我不确定下拉列表中的代码是哪个。但任何html下拉列表总是选择一个值。

例如使用此html:

<select>
  <option>Please select a value</option>
  <option>Volvo</option>
  <option>Saab</option>
  <option>Mercedes</option>
  <option>Audi</option>
</select>

你的考试将是:

assertSelectedValue | "locator" | Please select a value |

如果您的select有一个空的第一个选项,您可以将最后一列留空:

<select>
  <option></option>
  <option>Volvo</option>
  <option>Saab</option>
  <option>Mercedes</option>
  <option>Audi</option>
</select>

你的考试将是:

assertSelectedValue | "locator" |  |

答案 2 :(得分:0)

迟了几个月,但如果有其他人需要这个:

assertNotSomethingSelected | "locator" | |

答案 3 :(得分:0)

另一个可能的答案。

您有以下代码段:

<select>
  <option value="0"></option>
  <option value="1">Volvo</option>
  <option value="2">Saab</option>
  <option value="3">Mercedes</option>
  <option value="4">Audi</option>
</select>

您想检查自动名称,而不是选项的值。

你想要使用:

assertSelectedLabel | "locator" |  |