首页 > 解决方案 > 无法使用 Robotframework selenium 从 React 网页的下拉列表中选择元素

问题描述

我正在尝试使用 selenium2library 和 Robotframework 自动化反应网页。尝试从列表中选择元素时,selenium 无法在列表中找到值/索引。用于选择元素的代码

检查列表元素。

<div class="tab-content tab-content-custom">
    <div id="basic0" class="tab-pane fade provision-tab in active">
        <form class="col-md-12 center-form-container">
            <div class="form-group">
                <label for="exampleInputEmail1">ThemePark</label>
                <div>
                    <select class="form-control" name="factory">
                        <option index="0" value="">Select a ThemePark</option>
                        <option index="1" value="2018061109361161">Wonderla Kochi</option>
                        <option index="2" value="2018061109394722">Wonderla Bangalore</option>
                    </select>
                </div>
            </div>
        </form>
    </div>
</div>

用于从列表中选择元素的代码。

Click Element    //*[@id="basic0"]/form/div/diventer code here
Sleep    2s
Capture Page Screenshot
Click Element    //*[@id="basic2018061109361161"]/form/div[1]/div/select
Wait Until Page Contains Element    //select[@name="factory"]    timeout=60s
Select From List By Value   //select[@name="factory"]   2018061109361161

还尝试了“按索引从列表中选择”和“按标签从列表中选择”,但所有选项都抛出“无法在所选元素中找到值/索引/标签”的错误。

标签: reactjsseleniumrobotframework

解决方案


试试下面的代码:

browser.find_element_by_css_selector("select.form-control > option[value='2018061109361161']").click()

推荐阅读