Snapshot Testing

Published See discussion on Bluesky

The other day I noticed this really succinct and to the point tweet about snapshot tests from Mark Dalgleish:

The valuable insight here being the following:

We were snapshotting component markup in isolation, outside of a browser, without styles. We weren't testing the output. We were testing implementation details.

When I started working with Jest and snapshot testing I thought it was one of the coolest things ever. It felt like I was adding meaningful code coverage to my code, when in reality I was only testing the implementation details of it.

Over time I started to realize that the tests I was adding were only adding more friction to the work I was doing. Since then I have been slowly removing snapshot tests from my code whenever I make a change that causes the snapshot tests to fail.