Starejši kod (pogosto netestiran, težko spremenljiv kod) je izazov za testiranje — lahko ima zapletene odvisnosti in nima testov. Varno dodajanje testov vključuje tehnike kot so karakterizacijski testi, seams za prekinjenje odvisnosti in postopno izboljšanje, kar omogoča varnejše spremembe.
Izziv starejšega koda
Legacy code is often: untested, tightly coupled, hard to understand, risky to change:
→ no tests → changing it is dangerous (you can't tell if you broke something)
→ hard to test → dependencies are tangled (can't isolate units); not designed for testing
→ a chicken-and-egg problem: to change safely you need tests, but it's hard to test.
