Snapshot testing in Python with inline-snapshot

Write expected values once and automatically update the tests if they change

  1. Introduction to snapshot testing

Introduction

This series introduces inline-snapshot, a new Python package for 'snapshot' testing, where the values encountered at test time can be stored in the test source code itself.

Part 1 explains how snapshot testing is an effective tool for static data schemas but not for dynamic ones, as the changing item location and the changing item value mean there are 2 unknowns. It also speculates on the potential for "self-healing" tests that adapt to changes in data structure.

Part 2 (forthcoming) will review some gotchas, further functionality, and practical tips from real world usage.

Part 3 will consider where this approach might go, and what ideas it inspires.

Stay tuned for more!

📸🧪