Open
Description
Rationale
cypress
is an end-to-end testing framework that is JS-centered, thus it is easy to used for JS developer.
With cypress
, we can:
- setup end-to-end testing to make sure our change will not impact website functionality
- setup automatic accessibility auditing using cypress-axe.
- provide opportunities for community members to write end-to-end tests.
Considerations
- As
cypress
is heavy, including it asdevDependencies
would cause setup project too heavy. I would like to suggest everyone to installcypress
globally when they want to run the cypress tests. For CI, add manual step to runnpm install cypress
- We can use
start-server-and-test
to start the site locally and then run the cypress against the dev server. For now, don't setup test against the production site yet. If you want to try, [this article] seems like a good reference. - I've setup cypress testing in my personal website, you can refer how I do it. However, I've included
cypress
asdevDependencies
in that project, which is not what we want to do here.
Let's Pair Program
If you interested just comment on this issue, it's totally okay if you never contribute to any project. I can setup a screen-sharing with you to pair-program together.