PhantomJSDriver单击元素WebDriverException timeout

时间:2014-01-14 02:06:41

标签: c# selenium phantomjs ghostdriver

我有一个输入元素,可以在单击时打开一个新的弹出窗口(用户可以选择该字段的值)。

标记:

<html>
<input type="text" id="myPopup" readonly="readonly" name="myPopup">
</html>

C#:

    var driver = new PhantomJSDriver(@"C:\PhantomJS");
    driver.Navigate().GoToUrl(@"http://username:password@localhost/myUrl.aspx");
    var popupField = driver.FindElementById("myPopup");
    popupField.Click();

(我在Windows身份验证的URL中传递凭据)

我得到一个WebDriverException:

  

&#34;远程WebDriver服务器对URL的HTTP请求... element /:wdc:1389663237442/60秒后点击超时。&#34;

我尝试过的所有其他互动除了这个特殊元素外。还尝试使用IE / Chrome驱动程序,它可以工作。

有什么想法吗?

PhantomJS 1.9.2, C#/ GhostDriver, Selenium Webdriver 2.39, Windows 7 x64。 如果我能提供任何其他信息,请告诉我。

1 个答案:

答案 0 :(得分:1)

我有类似的问题。正如你所描述的那样,测试在FF上运行,但在PhantomJs上超时。我测试的页面使用了很多我认为使用XHR的社交媒体插件。删除对PhantomJs的大多数安全限制为我修复了它(见下文)。

service.IgnoreSslErrors = true;
service.WebSecurity = false; 
service.LocalToRemoteUrlAccess = true; 
service.DiskCache = true; // Dunno what this does but I thought it might help.
PhantomJSDriver driver = new PhantomJSDriver(service);