【问题标题】:Alternatives to testing HTML5 media elements测试 HTML5 媒体元素的替代方法
【发布时间】:2016-08-17 18:34:36
【问题描述】:

我正在 Capybara 测试中测试音频标签。我正在将 poltergeist 驱动程序与 PhantomJS 一起使用。问题是 PhantomJS 团队明确表示他们没有计划支持 HTML5 媒体元素,例如 <audio><video>。这是有问题的,因为我需要测试此音频播放器以进行功能测试。因此,我需要更换 poltergeist 驱动程序。存在哪些驱动程序替代方案?我可以为音频测试运行一个驱动程序,然后为其他测试运行 poltergeist 吗?

【问题讨论】:

    标签: ruby-on-rails html testing capybara headless-browser


    【解决方案1】:

    selenium 驱动程序运行实际浏览器而不是无头浏览器,因此支持真正的浏览器支持的任何功能(速度比无头驱动程序慢)。

    假设您使用的是普通的 Capybara/RSpec 配置,其中您设置了 Capybara.javascript_driver = :poltergeist 并使用 js: true 标记您的场景以指示使用 poltergeist,那么您可以删除 js: true 元数据并将其替换为 @987654325 @在你想使用音频的测试中

    【讨论】:

    • 理想情况下,我想坚持使用无头浏览器,这样我就不必在测试期间体验浏览器弹出的情况。
    • @jason328 那么您将受限于基于 QtWebkit 的无头浏览器(poltergeist/phantomjs 和 capybara-webkit)提供的功能。试试 capybara-webkit 看看它是否支持你需要的东西 - 你会想用 Qt 5.5.1 构建它以获得支持 html5 音频的机会(github.com/thoughtbot/capybara-webkit/issues/555 似乎表明它确实支持它)
    • 感谢您的回复。我会这样做并报告我的发现。
    • @jason328 和切换驱动程序的相同功能仍然存在 - 它只是 driver: :webkit(或者您注册 capybara-webkit 驱动程序的任何内容,就好像您自定义它的注册一样)
    猜你喜欢
    • 2014-02-02
    • 1970-01-01
    • 2013-02-12
    • 2014-06-30
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多