nodejs / readable-stream

Node-core streams for userland
https://nodejs.org/api/stream.html
Other
1.03k stars 227 forks source link

Add airtap for continuous browser tests #340

Closed vweevers closed 6 years ago

vweevers commented 6 years ago

Made a few quick hacks to get most tests passing in local Chrome at least.

What's the concurrency limit of the Sauce Labs account? You may want to change Travis's concurrency setting depending on that.

mcollina commented 6 years ago

What's the concurrency limit of the Sauce Labs account? You may want to change Travis's concurrency setting depending on that.

I would like to ask them to bump it, after this lands.

mcollina commented 6 years ago

Can you please allow me to push to this branch? I've made some changes in the next branch, and I would like to push a rebase.

mcollina commented 6 years ago

I'm currently getting:

$ NODE_OPTIONS="--trace-warnings" npm run test-browsers

> readable-stream@3.0.0-dev0 test-browsers /Users/matteo/Repositories/readable-stream
> airtap --sauce-connect --loopback airtap.local --no-coverage test/browser.js

- testing: chrome @ Windows 10: 67
- queuing: <chrome 67 on Windows 10>
- restarting: <chrome 67 on Windows 10>
- restarting: <chrome 67 on Windows 10>
- restarting: <chrome 67 on Windows 10>
- restarting: <chrome 67 on Windows 10>
- restarting: <chrome 67 on Windows 10>
- restarting: <chrome 67 on Windows 10>
(node:72841) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 done listeners added. Use emitter.setMaxListeners() to increase limit
    at _addListener (events.js:280:19)
    at SauceBrowser.addListener (events.js:297:10)
    at SauceBrowser.once (events.js:341:8)
    at /Users/matteo/Repositories/readable-stream/node_modules/airtap/bin/airtap.js:271:21
    at next (/Users/matteo/Repositories/readable-stream/node_modules/batch/index.js:129:7)
    at Batch.end (/Users/matteo/Repositories/readable-stream/node_modules/batch/index.js:169:5)
    at shutdownAllBrowsers (/Users/matteo/Repositories/readable-stream/node_modules/airtap/bin/airtap.js:275:15)
    at Zuul.<anonymous> (/Users/matteo/Repositories/readable-stream/node_modules/airtap/bin/airtap.js:245:9)
    at emitOne (events.js:116:13)
    at Zuul.emit (events.js:211:7)

When running things locally. Then it's stuck there.

vweevers commented 6 years ago

@ralphtheninja mind helping out with the airtap error above? I'm short on time

mcollina commented 6 years ago

Also on Travis we are getting: "Skipping Airtap due to no secure Travis environment" Why is that happening?

vweevers commented 6 years ago

@mcollina Travis secure environment variables are not available in PRs from external forks. Airtap doesn't run in this case because it would error (due to missing Sauce Labs credentials).

mcollina commented 6 years ago

Oh ok. So I should really just test it locally and then push to a new branch. Have you got any idea it does not work locally for me?

vweevers commented 6 years ago

Have you got any idea it does not work locally for me?

By locally do you mean in a local browser, or Sauce Labs? Because Airtap does not support the latter (yet), unless you manually run a Sauce Connect tunnel. See https://github.com/airtap/airtap/issues/23