-
Notifications
You must be signed in to change notification settings - Fork 13.9k
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
feat: Applitools Cypress workflow #19956
Conversation
…/applitools-cypress
…/applitools-cypress
Not familiar with applitools for cypress but I have general concern how it would work with randomized css-xxx items in DOM which can be changed between builds. Would this DOM verification be stable and reliable? |
Codecov Report
@@ Coverage Diff @@
## master #19956 +/- ##
=======================================
Coverage 66.29% 66.29%
=======================================
Files 1712 1712
Lines 63962 63962
Branches 6731 6731
=======================================
Hits 42404 42404
Misses 19847 19847
Partials 1711 1711
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report at Codecov.
|
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! Exciting times!
It doesn't even look at the dom... it literally takes screenshots of the UI and compares them to prior runs. in theory, you could change ALL SORTS of styling code, but if it looks the same, the tests will pass. |
cy.eyesOpen({ | ||
testName: 'Dashboards card-view', | ||
}); | ||
cy.eyesCheckWindow('Dashboards loaded'); |
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.
what's the significance of the name that you pass to eyesCheckWindow
and do these names have to be unique? Looking at how these two tests here have the same string passed in.
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.
Apparently these are enclosed within each test... they don't need to be unique it seems.
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.
This is really cool @geido!
* WIP * Attempt Github Actions integration * Add completion notification to workflow * Update env * Add new line * Add license * Fix whitespaces * Fix Yaml indentation * Fix afterEach * Add initial tests * Update config * Use test secret * Clean up * Add batchName * Disable logs - add secret * Create separate workflow * Clean up * Update workflow * Exclude applitools tests * Update jobs name * Run applitools tests separetely * Fix path pattern * Run once * Add more initial tests * Enhance tests * Add dashboard edit mode test * Move env * Exclude applitools from sqllab test run * Attempt pull_request_target * Catch Applitools failures * Clean up tests * Add test step * Add test step * Remove step * Fix SqlLab test * Update CURL request * Fix Yaml * Add empty data to batch completion
* WIP * Attempt Github Actions integration * Add completion notification to workflow * Update env * Add new line * Add license * Fix whitespaces * Fix Yaml indentation * Fix afterEach * Add initial tests * Update config * Use test secret * Clean up * Add batchName * Disable logs - add secret * Create separate workflow * Clean up * Update workflow * Exclude applitools tests * Update jobs name * Run applitools tests separetely * Fix path pattern * Run once * Add more initial tests * Enhance tests * Add dashboard edit mode test * Move env * Exclude applitools from sqllab test run * Attempt pull_request_target * Catch Applitools failures * Clean up tests * Add test step * Add test step * Remove step * Fix SqlLab test * Update CURL request * Fix Yaml * Add empty data to batch completion
SUMMARY
This PR adds a new Github workflow to enable visual regression testing against Cypress.
This is meant to be an initial test of the functionality and it only checks for a few main sections, including:
ADDITIONAL INFORMATION