首页 > 解决方案 > 以下返回 NoSuchElementException,您能帮我找出 xpath 语法中的错误吗?

问题描述

我的 xpath 元素定位器找不到错误

使用自动化测试工具 Selenium webdriver 登录

 driver.findElement(By.className("btn-primary")).click();
   driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
   driver.findElement(By.xpath("//input[@aria-labelledby='vaadin-text-field-label-19']")).click();
   driver.findElement(By.xpath("//input[@aria-labelledby='vaadin-text-field-label-19']")).sendKeys("xxx@gmail.com");
      driver.findElement(By.xpath("//input[@type='password']")).click();
    driver.findElement(By.xpath("//input[@type='password']")).sendKeys("12345678");
    driver.findElement(By.className("btn-block")).click();

标签: seleniumselenium-webdriver

解决方案


你能试试这个xpath吗

driver.findElement(By.xpath("//input[@placeholder='Enter email address']")).click();
driver.findElement(By.xpath("//input[@placeholder='Enter email address']")).sendKeys("xxx@gmail.com");

请避免在您的示例中引用具有动态索引的属性(vaadin-text-field-label-21) 21 是动态生成的,每次刷新或新会话时都会发生变化。


推荐阅读