如何使用Selenium获取css类名?

mar*_*571 24 java selenium css-selectors

我是硒测试的新手.我想用selenium获取css类名.我正在使用eclipse和Java进行开发.

<table >
<tr class="odd"><td>Odd row</td></tr>
<tr class="even"><td>Even row</td></tr>
<tr class="odd"><td>Odd row2</td></tr>
<tr class="even"><td>Even row2</td></tr>       
</table>
Run Code Online (Sandbox Code Playgroud)

有没有办法让类名称'奇数'或'偶数'使用硒?一世

Ste*_*hen 61

WebElement您可以使用getAttribute这样的方法:

element.getAttribute("class")
Run Code Online (Sandbox Code Playgroud)


lAH*_*2iV 16

是的,您可以getAttribute(attributeLocator)根据您的要求使用功能.

 selenium.getAttribute(//xpath@class);
Run Code Online (Sandbox Code Playgroud)

指定您需要知道其类的元素的Xpath.

谢谢.


use*_*594 5

没有任何东西取决于eclipse或java,实际上它更多的是关于位置策略.如果要使用/不使用css类访问特定的tr元素,可以使用css定位器:

css=tr:nth(indx_base_0)

第n行与班级

css=tr.odd:nth(indx_base_0)

第一行有类奇数

css=tr.odd

使用xpath:

//tr[index_base_1]
Run Code Online (Sandbox Code Playgroud)

第一行有类奇数

//tr[@class='odd']
Run Code Online (Sandbox Code Playgroud)

第n行,类奇数

//tr[@class='odd'][index_base_1]
Run Code Online (Sandbox Code Playgroud)

这是一些有用的例子


Sub*_*ubh 5

在代码段的上下文中,假设您要为表的第一行获取类“ odd”。
您可以按照以下步骤操作:(
注意:-假设您的网页中有一个表)

1- 首先获取元素:

WebElement ele = driver.findElement(By.xpath(“ // table / tr [1]”));;
上面的代码使用xpath获取元素,即表的第一行。

2- 然后,使用“ getAttribute”方法获取元素的属性“ class”:

字符串class_name = ele.getAttribute(“ class”);
上面的代码将获取相关元素的“类”名称,并将其分配给字符串变量“ class_name”以供进一步使用

同样,要获取“偶数”类(它是表的第四行的属性),可以使用以下代码:

ele = driver.findElement(By.xpath(“ // table / tr [4]”));;
class_name = ele.getAttribute(“ class”);