GoogleChrome / GoogleChrome/lighthouse
Convert Accessibility Gatherer to streaming results
- Dominant language
- JavaScript
- Stars
- 30.8k
- Forks
- 9.8k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 19
Description
When running Lighthouse (on a URL I can't share as it is private and requires cookie authentication) it throws a `PROTOCOL_TIMEOUT` error during the Accessibility Gatherer. Ultimately the call [driver.evaluateAsync](https://github.com/GoogleChrome/lighthouse/blob/master/lighthouse-core/gather/gatherers/accessibility.js#L109) with the axe `expression` doesn't return in time and the protocol timeout is triggered.
This is a really hard issue to debug as it's only happening when I run in Docker (not on my local mac) and therefore I can't easily see what's happening in the browser or why it's hanging. This isn't the first time I've come across an issue like this and we've been able to continue testing a site by skipping these audits.
Rather than throw a `PROTOCOL_TIMEOUT` and ultimately cancelling the whole run when the accessibility gatherer fails like this, would you be open to a PR which would handle this more gracefully? Ultimately allowing the Lighthouse run to finish without any accessibility score or audits as it would if the [No axe-core results returned](https://github.com/GoogleChrome/lighthouse/blob/master/lighthouse-core/gather/gatherers/accessibility.js#L111) error was thrown.
#### Environment Information
* Affected Channels: Node
* Lighthouse version: 6.0 (and 6.1)
* Chrome version: 83.0.4103.61
* Node.js version: 12.18.1
* Operating System: Debian
Contributor guide
Assessment
This issue has not been assessed yet.