如果实例化EdgeDriver,则会发生异常

时间:2015-10-22 01:31:45

标签: c# selenium selenium-webdriver microsoft-edge

如果实例化EdgeDriver,则会发生异常。

【例外情况】

  

未处理的类型' System.InvalidOperationException'   发生在WebDriver.dll

中      

附加信息:没有这样的驱动程序(NoSuchDriver)

【堆栈跟踪】

  

OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)

     

OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute,Dictionary`2 parameters)

     

OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)

     

OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor,ICapabilities desiredCapabilities)

     

OpenQA.Selenium.Edge.EdgeDriver..ctor(String edgeDriverDirectory,EdgeOptions选项)

     

ConsoleApplication.Program.Main(String [] args)

环境如下。

以下代码中发生异常。

IWebDriver webDriver =新的EdgeDriver(serverPath,options);

using OpenQA.Selenium;
using OpenQA.Selenium.Edge;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string serverPath = "Microsoft Web Driver";
            if (System.Environment.Is64BitOperatingSystem)
            {
                serverPath = Path.Combine(System.Environment.ExpandEnvironmentVariables("%ProgramFiles(x86)%"), serverPath);
            }
            else
            {
                serverPath = Path.Combine(System.Environment.ExpandEnvironmentVariables("%ProgramFiles%"), serverPath);
            }
            EdgeOptions options = new EdgeOptions();
            options.PageLoadStrategy = EdgePageLoadStrategy.Eager;
            IWebDriver webDriver = new EdgeDriver(serverPath, options);     // Exception occured!!
            webDriver.Url = "https://www.google.co.jp";
            IWebElement element = webDriver.FindElement(By.Name("q"));
            element.SendKeys("test");
            element.Submit();
        }
    }
}

会考虑哪些问题?

1 个答案:

答案 0 :(得分:0)

根据经验,我的第一个猜测是您运行的是不正确的MicrosoftWebDriver.exe版本。可执行文件是使用Windows构建的,但是单独发布,并且依赖于与运行的操作系统相同的构建。您可以按照以下步骤找到您所使用的操作系统版本:

转到开始>设置>系统>关于并表示操作系统构建。

到目前为止的发布是:

Windows 10 - TH1 - 10240 Windows 10秋季更新 - TH2 - 10586 Windows 10周年更新 - RS1 - 14393

接下来,您需要访问我们的WebDriver页面并选择相应的下载: https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/