Hacker News new | past | comments | ask | show | jobs | submit login

How would you describe the npm install process?



Just like any other module, but slower. There's a substantial bag of bits it needs to fetch (chromium), but that's cached.

I've also noticed that sometimes (in CI, less than 5% of the runs) the installation or run will fail deep in chromium. It's actually spawning a chrome process and tunneling remote commands to the child process to do work, so, I guess the flakiness is (almost) excusable?

Restarting the test always resolves the issue, fwiw.


You can install Puppeteer without downloading the bundled Chromium (PUPPETEER_SKIP_CHROMIUM_DOWNLOAD env variable), but you need to be careful to use it with a version of Chrome/Chromium that has a compatible dev tools api version.

I too have experienced flakiness in CI where Chrome doesn't always seem to start or quit within a reasonable amount of time. I get around this in production with timeouts that give any lingering Chrome processes a series of increasingly aggressive requests to quit, but my hosted CI environment doesn't like it when I send kill signals to random PIDs.

I'm hoping that this Firefox client will be somewhat more reliable in that regard.


I meant installing npm itself.


Simple, 0 configuration, fast. With a new installation of Selenium I always have to download the Firefox/Chrome drivers, have to setup paths, debug startup erros, plus it crashes pretty often.


This is about to change as WebdriverIO will support automation based on Puppeteer soon: https://github.com/webdriverio/webdriverio/pull/4210 .. with that you only need to install WebdriverIO via NPM and the browser you want to automate


No, I meant installing npm


I already had npm installed. And I think npm comes within the Node.js installer.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: