首页 文章

用量角器运行什么是好的无头浏览器?

提问于
浏览
16

新用户在这里 .

经过几个小时的 Build 我的烟雾和回归测试后,我在网上阅读了许多案例后发现,已知phantomjs与量角器一起运行会遇到麻烦 . 詹金斯一直在为它迄今为止所做的所有任务运行幻影 .

They need these tests to run as part of ci which does not have a windowing system installed.

所以如果有完全无头浏览器或无头镀铬(这将是最有益的)以及逐步设置它的推荐,我将不胜感激 . 我已经有一个conf.js和一个e2e.conf.js文件 . 我的代码与chrome完美搭配 .

我相信,我正在使用iMac和selenium webdriver .

编辑:问题=量角器不适用于phantomjs . 我做了什么=使用不同的网络元素,并搜索,如果有人遇到类似的情况 . 还搜索了用于量角器的无头浏览器,无法找到合适的解决方案 .

5 回答

  • 0

    您可以针对CodeShipDrone.ioboth提供您的量角器测试both提供Chrome和/或Firefox免费无头运行 . 不完全是...

  • 9

    如果您安装了Chrome 59,请使用以下标志启动Chrome:

    --headless
    

    如果您需要更多帮助,请告诉我,将为您编写配置:)享受

  • 1

    您最好的选择是继续使用Chrome . 通过一些工作,您可以通过CI和无头方式使其工作 - 我们使用无头的Jenkins和Docker Ubuntu服务器来完成这项工作 .

    您需要将Chrome配置为使用XVFB无头运行 . 您可以按照这里的要点开始https://gist.github.com/addyosmani/5336747

    您声明自己在Mac上,因此您可以通过计算机上的Docker运行无头测试,也可以为CI测试设置第二个配置 .

    另一个资源http://tobyho.com/2015/01/09/headless-browser-testing-xvfb/

  • 11

    如果有人到达这里 - 答案已经过时了 . Chromium(下一版本)现在支持无头模式 . 没有必要努力工作 .

    你可以在这里阅读更多:

    https://developers.google.com/web/updates/2017/04/headless-chrome

    以下是命令行中的示例

    chrome \
     --headless \                   # Runs Chrome in headless mode.
     --disable-gpu \                # Temporarily needed for now.
     --remote-debugging-port=9222 \
     https://www.chromestatus.com   # URL to open. Defaults to about:blank.
    

    您只需触发具有chrome功能的量角器:

    Activating chrome language flags when activating from protractor (selenium)

    这是我正在使用的配置

    capabilities: {
        'browserName': browserName,
        chromeOptions: {
          binary: '/Users/guymograbi/Downloads/chrome-mac/Chromium.app/Contents/MacOS/Chromium',
          args: ['--headless','--disable-gpu']
        }
      },
    

    更新 - 新版本的chrome不需要二进制属性

    在我的环境中,我发现我可以删除 binary 属性,因为稳定分支上可以使用新版本的chrome

    我的量角器配置是

    capabilities: {
        'browserName': 'chrome',
        chromeOptions: {
          args: [ '--headless', '--disable-gpu', '--no-sandbox', '--window-size=1920x1200' ]
        },
    
      },
    

    它现在可以顺利运行数周 . 强烈推荐 .

    更新 - 如何在业力中做到这一点非常容易

    在业力中使用无头铬是非常容易的:

    browsers: 'ChromeHeadless'
    

    它应该与铬装载机和一切工作 . more info

  • 1

    我会继续在普通浏览器中测试头部,但会使用远程selenium服务器作为服务 - Sauce LabsBrowserStack,请参阅:

相关问题