[Architecture] Headless mode coming for Chrome...

Tirloni, Giovanni gtirloni at ocadu.ca
Mon Jun 18 17:09:02 UTC 2018


Hello,

I'm proposing we switch infusion's CI tests to use containers and headless browsers:

   https://github.com/fluid-project/infusion/pull/909

I'd like to thank Tony for his work on enabling headless browsers in gpii-testem. It made everything easier while working on this.

All feedback is welcome!

Cheers,
Giovanni

On 05/30/2018 10:44 AM, Tirloni, Giovanni wrote:
> 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"
>>            }
>>        }
>> }
>>
>>
>>
> _______________________________________________________
> fluid-work mailing list - fluid-work at lists.idrc.ocad.ca
> To unsubscribe, change settings or access archives,
> see https://lists.idrc.ocad.ca/mailman/listinfo/fluid-work
> 


More information about the fluid-work mailing list