The tests today are a way of documenting the developer's expectations (in an executable test) so that you can extend, refactor and delete code in the future without the 'edit and pray' method. And bug hunting time is massively reduced because the bug broke the test suite 10 minutes after being introduced as opposed to 2 weeks later in production.
I can't document this, but many software projects fail or are forced into rewrites and rescues. That never happens when you have high code coverage.
Has any rescue team ever come into a project and gone 'Well, the test suite is in excellent shape, so this shouldn't be that hard'?
That's what I believe, but many products won't have a huge payoff for unit-testing every method. Most of my code coverage is more like automated QA tests through Cucumber / Capybara / Selenium in Ruby.