Regression testing with BackstopJS, Playwright, and SiteDiff

As part of building and maintaining Drupal projects, code changes and updates are progressively introduced and integrated into the code base. Sometimes, a small line of code tweak can introduce unforeseen consequences. Regression testing is about testing and making sure existing functionalities still work correctly after the updates.

For small projects, usually we maintain a small test suite and run it manually on each deployment. This is time-consuming and not error-proof, and doesn’t scale up well for big projects where there’s a lot of content that is impacted by module upgrades or content migrations. This is where automated testing tools are essential. In this session we discuss some use-cases for using SiteDiff and Playwright to automate regression tests.

Playwright: powerful open-source end-to-end testing framework, backed by Microsoft, support visual regression test
BackstopJS: open-source visual regression testing tool, comparing DOM snapshots
SiteDiff: command line tool, developed by Evolving Web, to compare different versions of pages of your site, at the markup level

Alex Dergachev
Robert Ngo

Drupal is a registered trademark of Dries Buytaert.