[Architecture] Headless mode coming for Chrome...

Tirloni, Giovanni gtirloni at ocadu.ca
Wed May 30 13:43:23 UTC 2018


With Firefox 60 and Chrome 66, all tests pass in headless mode for fluid-project/infusion.



gpii-testem$ git diff src/js/testem-component.js

diff --git a/src/js/testem-component.js b/src/js/testem-component.js
index 60b0968..416836c 100644
--- a/src/js/testem-component.js
+++ b/src/js/testem-component.js
@@ -429,10 +429,9 @@ fluid.defaults("gpii.testem.base", {
          ]
      },
      "headlessBrowserArgs": {
-        // TODO: enable once a new enough version of Firefox is available in CI.
-        // "Firefox": [
-        //     "--headless"
-        // ],
+         "Firefox": [
+             "--headless"
+         ],
          // See this ticket for details on the minimum options required to get "headless" Chrome working: https://github.com/testem/testem/issues/1106#issuecomment-298841383
          "Chrome": [
              "--disable-gpu",



If this is all there's to it, we can start migrating CI to headless if people are confident in the new headless features in Chrome/Firefox.


On 06/06/2017 11:01 AM, Tirloni, Giovanni wrote:
> On 07/11/2016 05:56 AM, Tony Atkins wrote:
>> To continue our ongoing discussions around browser testing, I wanted to point out the upcoming release of a "headless" mode for Chromium.
>> https://bugs.chromium.org/p/chromium/issues/detail?id=546953
> 
> Hello,
> 
>    I tested Chrome 59 and Firefox 55 Nightly in headless mode [0][1]. Everything worked fine with Chrome (all tests pass).
> 
>    Firefox is not quite there yet (multiple failures in Infusion and OAuth2 fail in GPII/universal).
> 
>    This should greatly simplify our CI setup, once it's ready (no need for Xorg/Xfvb, the browser could be in a container image).
> 
> 
> 0 - https://bugzilla.mozilla.org/show_bug.cgi?id=1338004
> 1 - https://www.mozilla.org/en-US/firefox/channel/desktop/
> 
> Regards,
> Giovanni
> 
> 
> 
> #GPII/universal/tests/web/testem_qi.json:
> 
> {
>       "test_page": "tests/web/html/all-tests.html",
>       "reporter": "tap",
>       "report_file": "report.tap",
>       "browser_args": {
>          "Chrome": [ "--headless", "--disable-gpu", "--remote-debugging-port=9222" ]
>       },
>       "launchers": {
>           "Firefox Nightly": {
>               "command": "/home/gtirloni/Downloads/firefox-nightly/firefox/firefox --headless <url>",
>               "protocol": "browser"
>           }
>       }
> 
> }
> 
> # fluid-project/infusion/tests/testem.json
> 
> {
>       "test_page": "tests/all-tests.html",
>       "timeout": 300,
>       "reporter": "tap",
>       "report_file": "report.tap",
>       "browser_args": {
>          "Chrome": [ "--headless", "--disable-gpu", "--remote-debugging-port=9222" ]
>       },
>       "launchers": {
>           "Node Module Basic Packaging Tests": {
>               "command": "node tests/node-tests/basic-node-tests.js --tap",
>               "protocol": "tap"
>           },
>           "Firefox Nightly": {
>               "command": "/home/gtirloni/Downloads/firefox-nightly/firefox/firefox --headless <url>",
>               "protocol": "browser"
>           }
>       }
> }
> 
> 
> 


More information about the fluid-work mailing list