提问人:Taylor Gagne 提问时间:1/11/2016 最后编辑:Taylor Gagne 更新时间:8/12/2017 访问量:2011
Java Selenium WebDriver 找不到表单字段
Java Selenium WebDriver Can't find form field
问:
我正在测试一个注册页面,我尝试了 name、xpath、id、class,但似乎没有任何效果。
这是我的 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"));
这是我尝试访问的表单标签
<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");
答:
0赞
Nipun Kumar
1/11/2016
#1
在 HTML u 共享中,没有名称标签。 所以试试 by.linktext(“Manager”)
评论
0赞
Nipun Kumar
1/11/2016
尝试使用 Sleenium iDe。它建议什么定位器值。还要检查寄存器表单的 HTML 是否属于某些 iframe,如果是,则需要处理它
0赞
Nitin Subramanya
1/12/2016
#2
请检查等待中指定的时间是否足以使元素完全加载。
或者
使用不同的定位器,例如名称、id(如果存在)不起作用。cssSelector
CssSelector example
driver.findElement(By.cssSelector(input[name='name']));
0赞
sarjit07
1/12/2016
#3
要访问表单字段,请使用
driver.findElement(By.xpath(“//input[@name='name']”));
0赞
Sanchita Mukherjee
1/14/2016
#4
如果您在隐式/显式等待后仍然面临访问元素的问题,请尝试在访问该元素之前放置屏幕截图,并查看该元素是否存在于页面上。
评论