2

C# を使用して geckodriver にアップグレードするには、助けが必要です。ここから geckodriver をダウンロードしました。Windows 10 64ビットを使用しているため、Windows 64ビットバージョンをダウンロードしました。ドライバーをプロジェクトの場所にコピーしました。

Environment.SetEnvironmentVariable("webdriver.gecko.driver", @"C:\Git\AutomationTest\Drivers\geckodriver.exe");
FirefoxDriverService driverService = FirefoxDriverService.CreateDefaultService();
driverService.FirefoxBinaryPath = @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";
driverService.HideCommandPromptWindow = true;
driverService.SuppressInitialDiagnosticInformation = true;
driver = new FirefoxDriver(driverService, new FirefoxOptions(), TimeSpan.FromMilliseconds(600));

エラーが発生しました:

Initialization method UnitTestProject1.UnitTest1.Init threw exception. OpenQA.Selenium.DriverServiceNotFoundException: OpenQA.Selenium.DriverServiceNotFoundException: The geckodriver.exe file does not exist in the current directory or in a directory on the PATH environment variable. The driver can be downloaded at https://github.com/mozilla/geckodriver/releases..
Result StackTrace:  
at OpenQA.Selenium.DriverService.FindDriverServiceExecutable(String executableName, Uri downloadUrl)
at OpenQA.Selenium.Firefox.FirefoxDriverService.CreateDefaultService()
at OpenQA.Selenium.Firefox.FirefoxDriver..ctor(FirefoxOptions options)
at OpenQA.Selenium.Firefox.FirefoxDriver..ctor()
at UnitTestProject1.UnitTest1.Init()

「Wires」に名前を変更しようとしましたが、うまくいきませんでした。SOで非常に多くの質問を検索しましたが、Selenium 3.0で解決策が見つかりませんでした.

システム変数のパスにドライバが入っているフォルダのパスを追加して使ってみDesiredCapabilitiesました。

DesiredCapabilities cap = DesiredCapabilities.Firefox();
cap.SetCapability("marionette", true);
var driver = new RemoteWebDriver(cap);

Selenium 3.0、FF 47.0.1、gecko v0.11.1 を使用しています。

ありがとう。

4

2 に答える 2

0

Firefox をバージョン 49.0.2 に更新し、セレン ドライバーを nuget パッケージから 3.0.0 に更新しました。システム パス変数に Firefox パスを追加しました。以上で、コーディング、つまり Firefox の宣言を変更しませんでした。更新後、待機や System.Net.Web 例外などの問題が多すぎます。テストケースのいくつかを修正する必要がありますが、うまくいきます。

于 2016-11-10T10:09:28.967 に答える