Selenium-WebDriver打开了新的Firefox窗口,但没有导航到URL

时间:2014-07-23 20:52:51

标签: c# testing selenium-webdriver

我的源代码是从selenium docs网站复制的。我没有做任何改变。 http://docs.seleniumhq.org/docs/03_webdriver.jsp#user-input-filling-in-forms 我通过NuGet安装了Selenium库,包括 Selenium远程控制(RC),Selenium WebDriver Mono,Selenium WebDriver支持类,Selenium WebDriver和Selenium WebDriver支持的Selenium。

当我运行此代码时,会打开一个新的Firefox窗口。但Firefox没有导航到URL,它只是卡住了,没有加载任何东西。 我尝试了Firefox v27,v29,v30和v31,但都没有。

enter image description here

using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;

// Requires reference to WebDriver.Support.dll
using OpenQA.Selenium.Support.UI;

class GoogleSuggest
{
static void Main(string[] args)
{
    // Create a new instance of the Firefox driver.

    // Notice that the remainder of the code relies on the interface, 
    // not the implementation.

    // Further note that other drivers (InternetExplorerDriver,
    // ChromeDriver, etc.) will require further configuration 
    // before this example will work. See the wiki pages for the
    // individual drivers at http://code.google.com/p/selenium/wiki
    // for further information.
    IWebDriver driver = new FirefoxDriver();

    //Notice navigation is slightly different than the Java version
    //This is because 'get' is a keyword in C#
    driver.Navigate().GoToUrl("http://www.google.com/");

    // Find the text input element by its name
    IWebElement query = driver.FindElement(By.Name("q"));

    // Enter something to search for
    query.SendKeys("Cheese");

    // Now submit the form. WebDriver will find the form for us from the element
    query.Submit();

    // Google's search is rendered dynamically with JavaScript.
    // Wait for the page to load, timeout after 10 seconds
    WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
    wait.Until((d) => { return d.Title.ToLower().StartsWith("cheese"); });

    // Should see: "Cheese - Google Search"
    System.Console.WriteLine("Page title is: " + driver.Title);

    //Close the browser
    driver.Quit();
}
}

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。解决方案是简单地卸载当前的firefox浏览器并下载旧版本“我试过2010版3.6.10工作得很好”。你的代码很好问题是Mozilla人决定不给任何第三方应用程序控制Firefox的权利。

祝你好运