Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

How does one even modify anything nontrivial without a test harness? You’d need to understand and remember every edge case in the whole system?

Take a nontrivial (but by no means enormous nor “messy”) system like the Roslyn C# compiler. It’s developed to a formal spec which is extremely rare, but it’s likeky almost impossible to add e.g a syntax change and foresee how that affects all scenarios. I can guarantee that any nontrivial change will break some tests which will force the author to iterate and solve the issues.

Most systems you encounter will be older, many will be much larger, messier, and not have the luxury of a spec that Roslyn has.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: