SeedlingConcept

Structure-Insensitive Tests

planted Jul 14, 2026 · last tended Jul 14, 2026

A behavior-preserving refactor should not change any test’s result. The mirror of Behavioral: that one asks tests to notice what matters, this one asks them to ignore what doesn’t. Tests coupled to names, call sequences, or private structure turn every refactor into test surgery; Fowler’s refactoring safety net only works when the net doesn’t move with the code.

Planted as a seedling on purpose: this is the one Beck property the research behind Test Desiderata has not yet put through a cross-author audit. It stays on the strength of the refactoring literature until then.

Measuring: refactor-safety rate. Green stays green through a behavior-preserving refactor.