Discussion about this post

User's avatar
Jelena Cupac's avatar

I've heard many developers say that they have integration and unit tests that span the entire system to check that it's working, so why would they need more tests?

Expand full comment
Valentina Jemuović's avatar

I received an insight question on LinkedIn, from Daniel Steinberg https://www.linkedin.com/feed/update/urn%3Ali%3Aactivity%3A7265432517472645120/

"In my mind, TDD and Legacy Rescue are two separate workflows. Both involve test coverage and refactoring, and in both cases, refactoring is directed by the Four Rules of Simple Design (of which the first rule necessitates test coverage). The difference is in the end-goal of refactoring. In TDD we refactor relentlessly (or, in Kent Beck's words, mercilessly) until we cannot refactor anymore. In Legacy Rescue, by contrast, we follow Arlo Belshee's adage: "I don't want good. I want better ... fast."

Now, while doing Legacy Rescue, we will sometimes want to shift into the TDD workflow, particularly when we have successfully isolated our change point and are ready to implement new functionality. But by this point, we are no longer in Legacy Code.

Your thoughts?"

Expand full comment
7 more comments...

No posts