Java 在带有Selenium Webdriver的弹出窗口中找不到元素

Java 在带有Selenium Webdriver的弹出窗口中找不到元素,java,dom,automation,popup,selenium-webdriver,Java,Dom,Automation,Popup,Selenium Webdriver,我正在使用InternetExplorerDriver和Java中的SeleniumWebDriver 我加载一个URL,同时打开另一个带有登录框的窗口。 使用上述方法 我可以选择所需的窗口,还可以将键发送到聚焦框中 popup.getKeyboard().sendKeys("yeuiryuiryweuiryeuiyterui"); 但是,以下方面: popup.findElement(By.id("userName")).sendKeys("user") 无法找到该元素,并引发元素未找到异

我正在使用InternetExplorerDriver和Java中的SeleniumWebDriver

我加载一个URL,同时打开另一个带有登录框的窗口。 使用上述方法

我可以选择所需的窗口,还可以
将键发送到聚焦框中

popup.getKeyboard().sendKeys("yeuiryuiryweuiryeuiyterui");
但是,以下方面:

popup.findElement(By.id("userName")).sendKeys("user")
无法找到该元素,并引发
元素未找到
异常(类似于此)


我哪里弄错了?

我建议您尝试使用xpath

String locator = "//*[@class='Class name of user name text box'and text()='if any']"
您可以通过firebug找到用户名

List<WebElement> element = Driver.driver.findElements(By.xpath(locator));   
List元素=Driver.Driver.findElements(By.xpath(locator));

在web元素上使用click函数,在密码上使用相同的函数,然后使用
Driver.selenium直接单击登录并提供登录按钮的xpath,以防id不存在。

什么是getKeyboard()方法?它用于将键发送到焦点元素。