Fix Cypress error
Merge Request Checklist
Review
-
Make sure the pipeline has passed. You may have to check the mirrored repo in code.il2.dso.mil to see the pipelines. -
Make sure that there are no errors in the development console. -
Make sure everything in the the ticket is addressed and that the acceptance criteria (if applicable) is met. -
Make sure all components and images match the design file or instruction given (if applicable). -
Make sure to take out any unused code. -
Make sure that common mistakes are not present in the code base. (See list under Common Mistakes below). -
Make sure the page is responsive (see the list for Responsiveness below for checklist). -
Check if any other issues may need to be checked (some examples can be found under Other items to look out for)
Common Mistakes
-
Make sure all words are spelled correctly (if applicable). -
Make sure the right images are used (if applicable). -
Do not use any inline styles in the HTML component in files. -
Make sure everything is aligned correctly. -
Please avoid making global variables. -
Make sure error handling is in appropriate places. -
Remove all test code within the working sections when ready to push to master.
Responsiveness
For all below check the following breakpoints for Vue apps
| Devices | Code | Screen sizes |
|---|---|---|
| Extra Small | xs | < 600px |
| Small | sm | 600px > < 960px |
| Medium | md | 960px > < 1264px |
| Large | lg | 1264px > < 1904px |
| Extra Large | xl | > 1904px |
-
Check for bad word breaks within each breakpoint. -
Check to see if components are misaligned or have bad spacing, padding, or margin. -
Check to see if components overflow to either side of the viewport. -
Check if there are any weird visual glitches at different breakpoints.
Other items to look out for
-
Make sure new API calls use the correct HTTP verb and when working with JSON make sure it is validated. -
With GETs, make sure that text/html return type is avoided and application/json is used when dealing with json data. -
Avoid transmission of confidential data in URL parameters and unnecessary parameters. -
Make sure all API calls are within a try catch block with appropriate error handling. -
If dealing with forms, make sure the form has input validation. -
Avoid logging confidential information. -
Make sure no-cacheis on confidential web pages. -
Make sure rel="noopener noreferrer"is on any link that opens to a new tab. -
For browser performance, use .webpimages instead of.png,.jpg,.jpeg, etc.
Developer responsibilities with Cypress tests
-
Make sure any new download buttons (that don't use DownloadButton.vue) have the attribute data-cy="download". -
Make sure new pages / paths within router.js are added to the links.js test suite. -
Add a new test case within downloads.js if you're adding the first download button to any page. -
Reuse existing custom commands if they serve the purpose of your test. -
Create a new custom command for any duplicate code / test that can be globally reused. -
Create a local function for duplicate code that can be reused within your test spec.
Edited by Raj Manandhar