2

我有一个在发送键时可见的文本字段的问题。我正在使用 IEDriverServer.exe 和 C#。

以下是我如何重现该问题:

有问题的文本字段在窗口中可见,但您必须向下滚动才能看到它。要向下滚动,我使用如下代码单击元素:

var element = driver.FindElement(By.Xpath("…"));
element.Click();

这会向下滚动窗口并使文本字段可见。

但是当我尝试将文本发送到现在可见的窗口时:

element.SendKeys("blah");

我得到了例外:

When_applicant_enters_application.Should_be_instantly_approved_on_external 抛出异常:OpenQA.Selenium.ElementNotVisibleException:不显示元素

如何修复或解决此问题?

Selenium 版本:2.32.1 操作系统:Windows 7 浏览器:IE 浏览器版本:9.0.15

4

1 回答 1

1

我已经编写了演示问题的代码并将其提交给 Selenium 技术支持志愿者。

完整的讨论在http://code.google.com/p/selenium/issues/detail?id=5620 但带回家的是:

// Doesn't work
// driver = new InternetExplorerDriver();
// driver.Navigate().GoToUrl(@"D:\CGY\selenium\Bug5620\Bug5620\Bug5620.htm");

// Works
// driver = new FirefoxDriver();
// driver.Navigate().GoToUrl(@"D:\CGY\selenium\Bug5620\Bug5620\Bug5620.htm");

// Works
driver = new InternetExplorerDriver();
driver.Navigate().GoToUrl(@"http://localhost:8080/Bug5620/"); // Hosted on Tomcat

因此可能存在涉及 IE、IE 安全设​​置、Visual Studio 本地服务器和/或 IE 驱动程序的问题。这甚至可能不是代码问题,而是需要记录的东西,因为其他人显然遇到了问题。

我不知道问题到底出在哪里,但此时我确实有一个解决方法,那就是使用 Firefox 驱动程序。

谢谢你的帮助,吉姆。如果您找到解决问题的更好方法,请在此处为其他人添加答案。

于 2013-05-10T18:13:34.023 回答