用 Selenium WebDriver Firefox 找不到 Firefox 的問題

情境

在測試專案中執行測試,希望用開啟 Firefox 來執行測試的腳本

遇到的問題

不僅僅遇到紅燈,測試也沒有正常運作

結果 StackTrace:
於 OpenQA.Selenium.Firefox.Internal.Executable..ctor(String userSpecifiedBinaryPath)
於 OpenQA.Selenium.Firefox.FirefoxBinary..ctor(String pathToFirefoxBinary)
於 OpenQA.Selenium.Firefox.FirefoxDriver..ctor()
於 SeleniumTests.Loginfailed.SetupTest()
結果訊息:
OpenQA.Selenium.WebDriverException:
OpenQA.Selenium.WebDriverException:
Cannot find Firefox binary in PATH or default install locations.
Make sure Firefox is installed. OS appears to be: Vista。

解決

有兩種解決方法:

  • 第一種:指定 Firefox 主程式的路徑
    [TestInitialize]
    public void SetupTest()
    {
    driver = new FirefoxDriver(new FirefoxBinary(@"C:\Program Files\Mozilla Firefox\firefox.exe"), null);
    baseURL = "http://localhost:29021/";
    verificationErrors = new StringBuilder();
    }

    然後再執行測試:綠燈。
  • 第二種:在系統環境變數中加入 Firefox 主程式的路徑
    1. C:\Program Files\Mozilla Firefox 加入到 PATH系統環境變數
    2. 重開 Visual Studio 後重新執行測試:綠燈。

Reference