没有这样的元素:无法找到元素:硒中出现异常

时间:2018-08-02 03:44:27

标签: java selenium testing selenium-webdriver nosuchelementexception

每次登录后尝试验证用户凭据时,我都会遇到错误。

  

org.openqa.selenium.NoSuchElementException:无此类元素:无法   定位元素:{“ method”:“ xpath”,“ selector”:“ // td [contains(text(),   '用户:Naveen K')]“}

我的代码如下

首页测试课程

@Test(priority = 2)
public void verifyUserNameLabelTest() {

    testUtil.switchToFrame();       

    Assert.assertTrue(homePage.verifyUserName());

}

TestUtil类

public void switchToFrame() {

    driver.switchTo().frame("mainpanel");

}

首页课程

public boolean verifyUserName() {

    return usernameLabel.isDisplayed();

} 

我的HTML网页源代码如下

img

2 个答案:

答案 0 :(得分:3)

问题出在您的xpath上,它试图查找用户元素:

  

“ // td [包含(text(),'用户:Naveen K')]”}

正确的xpath应该是:

"//td/font[contains(text(), 'User: Naveen K')]"}

您要查找的文本不属于td标签,而是属于字体标签。

答案 1 :(得分:0)

@rajKamal的答案很好,但是您也可以使用“。”搜索这样的名字

"//td/font[contains(., 'User: Naveen K')]"}