n8n/CHECKLIST.yml
Mutasem Aldmour 1bdeb6684a
ci: Add e2e checklist (#5678)
* chore: Add e2e checklist

* chore: add eol dots
2023-03-13 13:10:11 +01:00

48 lines
2.1 KiB
YAML

paths:
"packages/**":
- If fixing bug, added test to cover scenario.
- If addressing forum or Github issue, added link to description.
"packages/**/*.ts":
- Added unit tests to cover new or updated functionality.
"**/*.vue":
- Used composition API for all new components.
- Added component or unit tests to cover functionality.
# cli
"packages/cli/src/databases/migrations/**":
- Requested review from at least two engineers on migration.
- Avoided irreversible data migrations.
- Avoided deleting or updating data keys.
- Wrote 'down' migration if possible.
"n8n/packages/cli/src/api/**":
- Added integration tests for new endpoints.
# editor ui
"packages/editor-ui/**/*.vue":
- Added E2E if adding new features.
- Used design system tokens (colors, spacings...) where possible.
"packages/editor-ui/src/mixins/restApi.ts":
- Avoided adding new methods. Only deleted from here.
"packages/editor-ui/src/mixins/**":
- Avoided adding new mixins (use composables instead). Only removed code from here.
"packages/editor-ui/src/views/NodeView.vue":
- Avoided adding code here. Only refactored to make it smaller.
"packages/editor-ui/src/hooks/**":
- Avoided adding new hooks. Only refactored to move hooks to relevant store instead.
# nodes-base
"packages/nodes-base/nodes/**":
- Added workflow tests for nodes if possible.
# design-system
"packages/design-system/**/*.vue":
- Used design system tokens (colors, spacings...) where possible.
- Updated Storybook with new component or updated functionality.
# e2e
"cypress/e2e/**":
- Avoided chaining commands more than two or three times (to avoid flakiness because only last one will be retried).
- Spoofed endpoints that are not critical for the test (to avoid flakiness).
- Picked most efficient path to start the test (for example skipped account setup and starting at /workflow/new for a canvas test).
- Avoided adding waits on time (use request intercepts instead).
- Ensured each spec does not depend on any another spec to pass.