使用Selenium IDE选择Kendo Dropdown

时间:2015-10-15 14:46:32

标签: selenium kendo-ui selenium-ide

我正在使用Selenium IDE,我无法从我想要的kendo下拉菜单中选择一个项目。有人知道如何使用Selenium IDE做到这一点吗? (或者在C#中,但我暂时无法测试它。)

这是一个网站,其中包含我正在尝试练习的下拉菜单,尝试断言其他一些下拉选项,没有运气。 http://derp-bear.herokuapp.com/ui_widgets/kendo_ui_example

<tr>
    <td>open</td>
    <td>http://derp-bear.herokuapp.com/ui_widgets/kendo_ui_example</td>
<td></td>
</tr>
<tr>
    <td>click</td>
    <td>css=span.k-input</td>
    <td></td>
</tr>
<tr>
    <td>assertText</td>
    <td>css=span.k-input</td>
    <td>XL - 7 5/8</td>
</tr>

任何帮助都会很棒!

1 个答案:

答案 0 :(得分:4)

这不是传统的select下拉列表。下拉列表和选项分为两个不同的地方。

下拉箭头位于以下代码

<span class="k-select" unselectable="on">
    <span class="k-icon k-i-arrow-s" unselectable="on">select</span>
</span>

可以使用css

选择下拉箭头
css=span.k-select    

下拉选项位于以下位置。单击下拉箭头后激活此部分。

<ul class="k-list k-reset" unselectable="on" style="overflow: auto;" tabindex="-1" role="listbox" aria-hidden="true" id="size_listbox" aria-live="off">
    <li class="k-item" unselectable="on" role="option" tabindex="-1">S - 6 3/4</li>
    <li class="k-item" unselectable="on" role="option" tabindex="-1">M - 7 1/4</li>
    <li class="k-item k-state-selected k-state-focused" unselectable="on" role="option" tabindex="-1" id="size_option_selected" aria-selected="true">L - 7 1/8</li>
    <li class="k-item" unselectable="on" role="option" tabindex="-1">XL - 7 5/8</li>
</ul>

可以使用xpath

选择4个下拉选项中的任何一个
xpath=//li[@class='k-item'][.='L - 7 1/8']

Selenium IDE代码如下:

<tr>
    <td>open</td>
    <td>/ui_widgets/kendo_ui_example</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>css=span.k-select</td>
    <td></td>
</tr>
<tr>
    <td>pause</td>
    <td>3000</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>xpath=//li[@class='k-item'][.='XL - 7 5/8']</td>
    <td></td>
</tr>
<tr>
    <td>pause</td>
    <td>3000</td>
    <td></td>
</tr>
<tr>
    <td>assertText</td>
    <td>css=span.k-input</td>
    <td>XL - 7 5/8</td>
</tr>

使用pause等待加载内容。