如何绕过机器人中的木偶问题?



我被要求评估Robotframework,并对我所看到的大部分感到满意。 但是,为了使它对我来说是一个可行的选择,我需要它在 Firefox 中工作。

木偶功能在我的 Ruby/Capybara 环境中是一个问题,我能够关闭它。

Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, :browser => :firefox, desired_capabilities: Selenium::WebDriver::Remote::Capabilities.firefox(marionette: false))
end

在机器人/Python 2.7/ff44.0中获取相同的东西在任一方向上都产生了错误。

当木偶开启时:

${dc}   Evaluate    sys.modules['selenium.webdriver'].DesiredCapabilities.FIREFOX  sys, selenium.webdriver
Set To Dictionary    ${dc}    marionette=${True}
Open Browser    ${url_bck_auto}     Firefox     desired_capabilities=${dc}

我明白这个:

我们的产品摇滚 |失败 | Web 驱动程序异常: 消息: 不支持的木偶协议版本 2、必填 3

如果我关闭它,壁虎会将我撞到 ff51.0.1(32 位),我会收到一条不同的消息:

我们的产品摇滚 |失败 | Web驱动程序异常: 消息: 无法加载配置文件。可能的火狐 版本不匹配。您必须将 GeckoDriver 改用 Firefox 48+。 Profile Dir: c:\users\blah\appdata\local\temp\tmpqzlxha\
webdriver-py-profilecopy 如果您在 FirefoxBinary 中指定了log_file 构造函数,请检查它以了解详细信息。

壁虎驱动程序版本为 0.15.0

任何帮助将不胜感激,谢谢!

Windows 10我正在运行Robot Framework 3.0Selenium2Library 1.8.0Selenium 3.0.2,当我开始您的示例或简化的单open browser http://google.com时,我在使用Gecko 0.15.0时得到相同的结果。浏览器启动,但不会移动到所需的页面。驱动程序成功关闭,但浏览器保持打开状态。

使用相同的设置,但降级Geckodriver to 0.14.0结果会发生变化,浏览器的行为符合预期。加载页面并在调用关键字时关闭Close Browser

因此,我建议降级为Geckodriver 0.14.0

相关内容

最新更新