Java Selenium WebDriver无法找到表单字段

我正在测试一个注册页面,我尝试了名称,xpath,id,类,似乎没有任何工作。

这是我的selenium代码

driver.findElement(By.id("pushMenu")).click(); Thread.sleep(2000); driver.findElement(By.linkText("Register")).click(); Thread.sleep(2000); WebElement l = driver.findElement(By.name("name")); 

这是我正在尝试访问的表单标记

  

显式等待尝试代码:

  WebDriverWait wait = new WebDriverWait(driver, 10); WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.name("name"))); driver.findElement(By.name("name")).sendKeys("Testing100"); 

在HTML中你共享没有名称标签。 所以尝试by.linktext(“经理”)

请检查等待中指定的时间是否足以使元素完全加载。
要么
如果name,id(如果存在)不起作用,请使用不同的定位器,如cssSelector

 CssSelector example driver.findElement(By.cssSelector(input[name='name'])); 

要访问表单字段,请使用

driver.findElement(By.xpath( “//输入[@名称= ‘名称’]”));

如果在隐式/显式等待之后仍然遇到访问元素的问题,那么在访问元素之前尝试放置屏幕截图,看看该元素是否存在于页面上。

Interesting Posts