c# Selenium 2.53 在 firefox 升级到 47 后移动到木偶驱动程序

标签 c# selenium firefox firefox-marionette

我正在尝试使用 selenium 进入升级后的 firefox web 浏览器自动化。 selenium 似乎需要木偶驱动程序才能继续工作。我遵循了开发者设定的说明,

  1. 下载驱动
  2. 重命名为wires.exe

以下代码未能将 PATH 正确设置为自定义路径。

System.Environment.SetEnvironmentVariable("webdriver.gecko.driver", "@C:\DOWNLOADS\wires.exe")

所以我将 wires.exe 添加到 debug\bin 文件夹,然后 wires.exe 可以正常工作,但出现以下错误

System.InvalidOperationException was caught Message=entity not found Source=WebDriver

这是我用来启动 webdriver 的代码

FirefoxOptions option1 = new FirefoxOptions();
option1.IsMarionette = true;
option1.AddAdditionalCapability("marionette", true);
driver = new FirefoxDriver(option1);

最佳答案

我在使用 FirefoxDriver(new FirefoxOptions()) 时也遇到了“找不到实体” 错误。它似乎在 C:\Program Files (x86)\Nightly 中寻找 firefox.exe,但没有找到。我发现这个工作:

FirefoxDriverService service = FirefoxDriverService.CreateDefaultService();
service.FirefoxBinaryPath = @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";
IWebDriver driver = new FirefoxDriver(service);

关于c# Selenium 2.53 在 firefox 升级到 47 后移动到木偶驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37761080/

相关文章:

css - 使用 CSS 列 'page-break-inside' 不适用于 Flexbox 'align-items:center'

c# - Xamarin iOS 在点击时隐藏占位符

c# - 测试中的代码覆盖率

google-chrome - 使用 ChromeDriver 和 Chrome DevTools 协议(protocol)进行多客户端远程调试

javascript - 如何在 Selenium webdriver 中使用 cssSelector 识别多个参数

firefox - 以编程方式将 URL 中的 # 传递到浏览器

IE 中的 Javascript 权限被拒绝错误,创建 xml 文件时在 firefox 中未定义 ActiveXObject

c# - 如何让重力在Unity3D的编辑器模式下工作

c# - 将公共(public)属性用于内部和公共(public)使用还是分开使用?

java - 配置失败: @BeforeTest setUp