selenium2之层级定位元素

selenium层级定位:先定位到父元素,然后再从父元素中精确定位到我们所需的子元素。

通常无法直接定位到需要选取的元素,但是其父元素比较容易定位时,通过定位父元素再遍历其子元素选择需要的目标元素,或者需要定位某个元素下所有的子元素。

HTML代码:

<div id=”loginUsernameDiv”>
<label for=”loginUsername”>Email or username:</label>
<input id=”loginUsername” class=”medium” type=”text” name=”login[username]” value=””> </div>

以下代码使用层级定位的方法,首先根据id定位到loginUsernameDiv,然后通过tagName遍历其下所有的label元素,最后输出label对应的文本。

WebElement pas=driver.findElement(By.id(“loginUsernameDiv”));

List<WebElement> paslabel=pas.findElements(By.tagName(“label”));

for(WebElement pa:paslabel){

System.out.println(pa.getText());}

最后输出结果:Email or username:

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注