单击使用selenium的“rel”属性

时间:2013-10-30 01:01:18

标签: java css selenium selenium-rc

我正在尝试使用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);

2 个答案:

答案 0 :(得分: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')]");

答案 1 :(得分:0)

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

selenium.select(“下拉列表的定位符”,“Index = indexno。”);