使用 Excel(OpenPyXl) 选择下拉值 - Selenium-Python

问题描述 投票:0回答:2

我有一个具有多个下拉菜单的网络应用程序。为了输入其他文本字段的值,我从 Excel 读取数据以符合数据驱动测试。但我想知道是否也可以从Excel读取下拉值?截至目前,我已经使用 Xpath 来读取下拉值。

要读取 Excel,我使用了以下代码

    wk = openpyxl.load_workbook(FilePath.Test_Data_Path + 'testdata.xlsx')
    sh = wk['user_details']
    rows = sh.max_row
    for i in range(2, rows + 1):
        cell_name = sh.cell(row=i, column=1)
        cell_email = sh.cell(row=i, column=2)
        cell_product = sh.cell(row=i, column=3)
        cell_make = sh.cell(row=i, column=4)
        cell_model = sh.cell(row=i, column=5)

为了阅读下拉菜单,我使用了以下方法

dropdown=driver.find_elements_by_xpath(xpath)
python selenium drop-down-menu openpyxl data-driven-tests
2个回答
1
投票

下面的代码可能会解决您的问题:

wk = openpyxl.load_workbook(FilePath.Test_Data_Path + 'testdata.xlsx')
sh = wk['user_details']
rows = sh.max_row

for i in range(2, rows + 1):
    cell_name = sh.cell(row=i, column=1) 
    dropdown = driver.find_element_by_xpath('dropdown_xpath')

    for option in dropdown.find_elements_by_tag_name('option'):
        name = option.text

        if name == cell_name:
           option.click()
           break

它将使用我们的 Excel 值检查每个选项值,如果匹配,则将选择选项


0
投票

上述问题或解决方案中的 driver 是什么?

© www.soinside.com 2019 - 2024. All rights reserved.