Selenium:如何在下拉列表中验证当前选择的选项?

时间:2017-09-12 19:49:03

标签: python selenium-webdriver drop-down-menu verification

我有一个包含多个对象的下拉菜单:Dropdown

我想验证2小时的默认选择选项。到目前为止,我已经完成了以下工作:

   def time_span_default(self):
    dropdown = Select(self.driver.find_element(*Elements.timespan_dropdown))
    default_option = dropdown.first_selected_option
    return default_option.text

 # If default_option.text == "2 hours" my testcase is verified and can continue...

但是,我也希望在我选择其他对象后验证其他对象的文本。

如果我想验证当前所选对象的文本,有人可以建议最好的方法吗?

3 个答案:

答案 0 :(得分:1)

在您的示例代码中,您设置了dropdown = Select...

该选择对象具有属性options,这将为您提供下拉菜单中每个选项的元素列表,您可以迭代列表并获取用于验证的元素文本

在您的情况下,dropdown.options将返回4个网络元素的列表,每个时间跨度一个。

答案 1 :(得分:1)

即使您更改了所选选项,

first_selected_option也可以完成这项工作。来自docs

  

此选择标记中的第一个选定选项(或正常选择中当前选定的选项

答案 2 :(得分:0)

如果您通过css_selector查找<option>,则可以使用

获取所选的一个
selected = self.driver.find_element_by_css_selector("option[selected]")
相关问题