1. ホーム
  2. selenium

selenium webdriverでFirefoxの新バージョンを呼び出す。

2022-02-17 08:01:30
<パス

seleniumを学習する際に設定した環境は
セレン 3.7.1
Firefox 57.0
すべての新しいバージョンで、TestNG用に通常通り書かれています driver = new FirefoxDriver(); エラー報告を発見。

IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases

プロンプトによると、Firefox を正しく起動するには webdriver.gecko.driver が必要なようなので、ダウンロードしました。
リンク エラーメッセージにあるgeckodriverのダウンロードアドレス(github) 国内のgitへのアクセスは非常に遅く、何度も試してようやくダウンロードに成功しました

ドライバの設定後、Firefoxがデフォルトのパスにインストールされていないため、2つ目のエラーが報告されました。

WebDriverException: Cannot find firefox binary in PATH. make sure firefox is installed. os appears to be: VISTA
Build info: version: '3.7.1', revision: '8a0099a', time: '2017-11-06T21:07:31.527Z'
System info: host: 'WIN7-PC', ip: '192.168.1.110', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_91'
Driver info: driver.version: FirefoxDriver

firefox binary is not found in the environment, solution 1: Firefoxをデフォルトのパスに再インストールする; solution 2: Firefoxのインストールパスを直接指定する。
コードを修正しました。

@BeforeMethod
  public void beforeMethod(){
      // To bring up the new version of firefox, you need the geckodriver driver (java.lang.IllegalStateException reports an error when not set)
      System.setProperty("webdriver.gecko.driver", "D:\\javas\\geckodriver.exe");
      //If you can't open Firefox browser, you can set the installation path of Firefox browser (not set the path when path error)
      System.setProperty("webdriver.firefox.bin", "D:\\firefox\\\firefox.exe");
      //Open Firefox browser
      driver = new FirefoxDriver();
  }

再度実行し、Firefoxを立ち上げることに成功し、問題は解決しました。