Selenium,C#,Chrome和Firefox都不启动自动脚本,但IE可以(添加脚本)

时间:2018-11-01 14:00:21

标签: c# selenium selenium-webdriver selenium-chromedriver selenium-firefoxdriver

我正在Visual Studio中将以下脚本作为测试项目运行。我遇到的问题是Chrome无法运行脚本,因为该脚本超时。使用Firefox会遇到相同的行为。但是,该脚本在Internet Explorer中成功运行。如果有人遇到此问题,谁能提供帮助?我已更新到最新的Web驱动程序,已更新到最新版本的V.S.,甚至已卸载并重新安装VS,但是我还没有走运。 Chrome和Firefox浏览器打开,但它们保持空闲状态,最终我收到超时消息。我注意到它使chromedriver和geckodriver保持在任务管理器中运行,并且我不得不手动结束这些会话。

Visual Studio Pro 2017 Ver 15.8.7 .net Framework ver 4.7.02046 Selenium.Firefox.WebDriver ver 0.22.0 Selenium.WebDriver.ChromeDriver ver 2.43.0 Selenium.WebDriver.IEDriver ver 3.141.0

消息:初始化方法{{ProjectName}}引发异常。 OpenQA.Selenium.WebDriverException:60秒后,对远程WebDriver服务器的URL http://localhost:xxxx/session的HTTP请求超时。 ---> System.Net.WebException:请求已中止:操作已超时。

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.IE;
using OpenQA.Selenium.Support;
using OpenQA.Selenium.Support.UI;

namespace ChromeFF_Fix
{
[TestClass]
public class UnitTest1
{
    [TestMethod]
    public void TestMethod1()
    {
        //IWebDriver driver = new ChromeDriver(@"C:\Users\martigi\Downloads");
        //IWebDriver driver = new FirefoxDriver(@"C:\Users\martigi\Downloads");
        //IWebDriver driver = new ChromeDriver();
        IWebDriver driver = new FirefoxDriver();
        //IWebDriver driver = new InternetExplorerDriver();
        driver.Navigate().GoToUrl("https://google.com");
        driver.Quit();
    }

}
}

1 个答案:

答案 0 :(得分:0)

我在Firefox上遇到了完全相同的问题(我没有使用Chrome进行测试)。 当我尝试调试它时,我注意到调用FirefoxDriver构造函数后,更新的代码到达了该行。

对我来说,解决方案是下载最新的Gecko驱动程序,当前版本为v0.23.0-https://github.com/mozilla/geckodriver/releases/tag/v0.23.0