2

我正在测试一个注册页面,我尝试了 name、xpath、id、class,但似乎没有任何效果。

这是我的硒代码

  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"));

这是我要访问的表单标签

<input type="text" name="name" placeholder="">

显式等待尝试代码:

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

4 回答 4

0

在您共享的 HTML 中,没有名称标签。所以试试 by.linktext("Manager")

于 2016-01-11T13:39:34.793 回答
0

要访问表单字段,请使用

driver.findElement(By.xpath("//input[@name='name']"));

于 2016-01-12T11:14:18.717 回答
0

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

于 2016-01-14T06:29:13.267 回答
0

请检查等待中指定的时间是否足以使元素完全加载。

使用不同的定位器,例如cssSelector如果名称、id(如果存在)不起作用。

CssSelector example
driver.findElement(By.cssSelector(input[name='name']));
于 2016-01-12T06:53:07.447 回答