我是Selenium的新手。我只想通过internetexplorer使用以下代码将密钥发送到用户名文本框;
以下是代码:
public class IE_Brower {
public static void main(String[] args) {
System.setProperty("webdriver.ie.driver", "Driver/IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriver();
driver.get("https://www.facebook.com");
driver.findElement(By.id("email")).sendKeys("Testing");
}
}
但只有facebook页面开放,但文本字段中的值未通过。这个不起作用。 请帮帮我。
答案 0 :(得分:0)
我的猜测是该页面需要时间加载,在加载之前,它会尝试查找“email”元素,但由于页面未完全加载,因此无法找到该页面。
解决方案是等到特定元素可见,然后像 - -
一样发送给它WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("email")));
driver.findElement(By.id("email")).sendKeys("Testing");
这将等到电子邮件元素可见&在向它发送一些输入之前加载。
答案 1 :(得分:0)
代码对我来说很好。
只需确保您拥有与本地安装的Internet Explorer浏览器相关的最新IEDriverServer.exe
和正确的32/64位IEDriverServer.exe
。