Wenn wir Software in die Wartung übernehmen finden wir oft Projekte in denen es keine Tests gibt.
Wir ziehen dann nicht mit der Aufgabe los, Tests um der Tests willen zu schreiben. Stattdessen fangen wir einfach an opportunistische Tests zu schreiben, nur dort wo wir ohnehin einen Bug fixen oder eine neue Funktionalität einbauen und auch nur dann, wenn es einfach und ohne ohne zu viel Refactoring möglich ist. Die Tests binden wir natürlich in eine Dev-Ops Pipeline ein.
Wenn wir das eine Weile machen stellt sich ein super Effekt ein. Die Qualität der Software steigt schnell. Einfach weil schrittweise die kritischen Punkte über Tests abgesichert werden - jedoch genau die Ecken des Quellcodes in denen es viele Bugs oder große Veränderungen gibt. So stabilisiert sich der Quellcode für die Weiterentwicklung. Außerdem sinkt der manuelle Testaufwand.
Diesen Effekt, dass die Tests einfach so in das Projekt reinkriechen nennen wir: Test Creep
und Test Creep ist super!