Support for aXe / Puppeteer / storyshot / CI / Jest flow?
See original GitHub issueIs your feature request related to a problem? Please describe. No. Other than, trying to make the world a little more accessible! 😉
Describe the solution you’d like
I’ve got code working with Storyshots, but the addon-a11y
mentions CI integration in its roadmap and add-ons seem more focused on the Storybook UI and not on test suites. Storyshots seems to be focused on DOM and image snapshots–that is it has artifacts that are stored in git and diff’ed.
The workflow working today is Storybook build CLI -> Jest -> Storyshots -> Puppeteer -> Jest expect() -> AxePuppeteer -> aXe
. Performance is more than twice (3 min vs 8 min) that of StoryShots + jest-axe
which uses jsDOM
on the 448 stories I’m testing in Salesforce Lightning Design System for React.
Describe alternatives you’ve considered
I’ve implemented jest-axe
with Storybook, but it’s too slow for the large scope of our project of implementing https://www.lightningdesignsystem.com/ .
Are you able to assist bring the feature to reality?
Yes, I’d love to contribute after corporate approval. That’s primarily why I’m asking for some direction. Where would this feature live? I’m guessing it would be it’s own add-on like addon-storyshots-puppeteer
or be added into that add-on and linked to from the addon-a11y
. addon-storyshots-puppeteer
is a vague name. It describes the how and not the what it does. On a related note, is storyshots
really story-ci
in its purpose? My running code structure is very similar to addon-storyshots-puppeteer
, it’s almost like it got copied and pasted or something. 😄
Additional context Screenshot: Unfortunately, the color contrast in the terminal isn’t very high in this screenshot.
Related links
Issue Analytics
- State:
- Created 4 years ago
- Reactions:2
- Comments:8 (5 by maintainers)
Top GitHub Comments
I think it can be actually a part of
addon-storyshots-puppeteer
, and useexpect(page).toPassAxeTests()
fromjest-puppeteer-axe
in test body instead of screenshotImplemented in #8934