【问题标题】:click "rel" attribute using selenium使用硒单击“rel”属性
【发布时间】:2013-10-30 01:01:18
【问题描述】:

我正在尝试使用 java 和 selenium 从站点的下拉菜单中选择一个选项。由于唯一的类名,我可以单击 7 号。但是我无法像我想要的那样点击 9 或 10.5 号。所以我想知道我是否可以根据 rel 属性点击?

<li class="nsg-form--drop-down--option  first-in-row upper-left" rel="3161894:7"> 7 </li>
<li class="nsg-form--drop-down--option" rel="3161895:7.5"> 7.5 </li>
<li class="nsg-form--drop-down--option last-in-row upper-right" rel="3161896:8"> 8 </li>
<li class="nsg-form--drop-down--option first-in-row" rel="3161897:8.5"> 8.5 </li>
<li class="nsg-form--drop-down--option" rel="3161898:9"> 9 </li>
<li class="nsg-form--drop-down--option last-in-row" rel="3161899:9.5"> 9.5 </li>
<li class="nsg-form--drop-down--option first-in-row" rel="3161900:10"> 10 </li>
<li class="nsg-form--drop-down--option" rel="3161901:10.5"> 10.5 </li>
<li class="nsg-form--drop-down--option last-in-row" rel="3161902:11"> 11 </li>
<li class="nsg-form--drop-down--option first-in-row" rel="3161903:11.5"> 11.5 </li>

我试过了:

selenium.click("rel=3161898");
selenium.mouseDown("rel=3161898);
selenium.mouseUp("rel=3161898);

【问题讨论】:

    标签: java css selenium selenium-rc


    【解决方案1】:

    我对 Selenium-RC 不太熟悉,但您应该在这里尝试 CSS Selector 或 XPath。

    // CSS Selector
    selenium.click("css=li.nsg-form--drop-down--option[rel$=':9']"); // rel ends with :9
    selenium.click("css=li.nsg-form--drop-down--option[rel^='3161898']"); // rel starts with 3161898
    
    // XPath
    selenium.click("xpath=//li[contains(@class, 'nsg-form--drop-down--option') and contains(@rel, ':9')]");
    selenium.click("xpath=//li[contains(@class, 'nsg-form--drop-down--option') and starts-with(@rel, '3161898')]");
    

    【讨论】:

    • 对 xpath 一点也不熟悉,但这有效!感谢您的帮助!
    【解决方案2】:

    我觉得如果是下拉菜单中的一个元素,那么使用下面的语法来选择那个元素:

    selenium.select("下拉列表的定位器","Index= indexno.");

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多