- helps very fast to cover complex test cases
- saves a lot of typing (generally worth to test generated structures)
- renaming of files, functions or describes leads to changes that are hard to verify
- snapshots with old names are deprecated
- snapshots with new names are generated
- you don't have a diff between the two
- first run of the tests generates snapshot, so it's impossible to do red-green-refactor properly
- you can fake it out by saving first snapshot empty, but you have to think about it