Skip to content

Latest commit

 

History

History
 
 

visual-testing-with-percy

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

example: visual-testing This project is using Percy.io for visual regression testing.

Uses @percy/cypress to run visual tests for a demo of Material UI date pickers from https://material-ui.com/components/pickers/. Every pull request shows the visual diff (if any) and allows us to confirm that styles and layouts have not changed.

Note: run npm install in this folder to symlink cypress-react-unit-test dependency.

The project was set up using Percy documentation (see support and plugins files). The example spec src/DatePicker.cy-spec.js runs cy.percySnapshot after confirming the DOM has updated.

mount(<MaterialUIPickers />)
// confirm the DOM has rendered the widget
cy.get('#date-picker-inline').should('have.value', '08/18/2014')
// then take visual snapshot
cy.percySnapshot('Datepicker initial')

cy.get('button[aria-label="change date"]').click()
// confirm the DOM has rendered the widget
cy.get('.MuiPickersBasePicker-container').should('be.visible')
// then take visual snapshot
cy.percySnapshot('Datepicker opened')

New screenshot

Percy dashboard

Visual change

If a pull request introduces visual changes, they are caught and shown as a diff

Visual change

Tip: you can use any visual testing plugin with component testing.