-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cypress tech memo, re: test-e2e-deployment #3196
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #3196 +/- ##
========================================
Coverage 91.59% 91.59%
========================================
Files 297 297
Lines 8509 8509
Branches 621 621
========================================
Hits 7794 7794
Misses 601 601
Partials 114 114
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Sentry.
|
## Method/Design | ||
|
||
### Abstracted Gherkin Steps | ||
Presently, many of the defined Javascript functions for a given Gherkin step are bespoke or single-use instead of abstracted and should be adapted. Additionally, it was found that sessions were lingering between Gherkin scenarios as we did not have generic `setup` and `teardown` implementations ahead of these. Sufficient utilization of abstraction within the scenarios which are now doing setup/teardown between scenarios and proper session management should result in a cleaner Cypress execution and make future additions simpler. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you provide an example of what level of abstraction your are driving towards?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or is that what the ### Abstracted utility authentication functions
section is covering?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The abstracted section below is for the JavaScript side. I will revise this section to be more verbose on how I imagine we might restructure the Gherkin. Reading through it, especially without Jan's clearing of cookies, one scenario needed to be run before another, etc. Assuming we get the setup/teardown, these scenarios can be independent. I'll include psuedo-code examples as we discussed Friday I think on how tech memos ought to look.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we might need to update cypress and/or cypress-cucumber-preprocessor to get these (i couldn't get them to work in the 5 minutes i spent messing with it), but we should have BeforeAll
and BeforeEach
hooks available
12/4: Andrew to re-request reviews |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good. Thanks for adding the extra steps!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Summary of Changes
Provide a brief summary of changes
Pull request relates to #3141
Additionally, has some minor developer quality of life improvements:
How to Test
N/A
Deliverables
More details on how deliverables herein are assessed included here.
Deliverable 1: Accepted Features
Checklist of ACs:
Deliverable 2: Tested Code
CodeCov Report
comment in PR)CodeCov Report
comment in PR)Deliverable 3: Properly Styled Code
Deliverable 4: Accessible
iamjolly
andttran-hub
using Accessibility Insights reveal any errors introduced in this PR?Deliverable 5: Deployed
Deliverable 6: Documented
Deliverable 7: Secure
Deliverable 8: User Research
Research product(s) clearly articulate(s):