我正在尝试使用 Selenium (Python) 实现数据驱动的测试方法,但我遇到了从多个组合框中选择动态值的问题。我目前知道一个选项,使用方法 driver.execute_script("JAVASCRIPT TO GET COMBO BOX OPTION") 但硬编码值违背了自动化数据驱动测试的目的。还有其他解决方案吗?
PS如果需要任何其他信息,请告诉我。
谢谢,埃里克
我正在尝试使用 Selenium (Python) 实现数据驱动的测试方法,但我遇到了从多个组合框中选择动态值的问题。我目前知道一个选项,使用方法 driver.execute_script("JAVASCRIPT TO GET COMBO BOX OPTION") 但硬编码值违背了自动化数据驱动测试的目的。还有其他解决方案吗?
PS如果需要任何其他信息,请告诉我。
谢谢,埃里克
我认为这应该 $("#id").val() 给你我猜的价值
不要那样做......那很糟糕......当 Selenium 可以很好地处理它时,不要将它委托给 JS。
你可以尝试类似的东西 -
el = driver.find_element_by_id('id_of_select')
for option in el.find_elements_by_tag_name('option'):
if option.text == 'The Option I Am Looking For':
option.click()
我在 Python 中找不到任何文档,但是有一个名为的类SElect
,它有几个可以使用的方法,比如,select_option_by_visible_text