I am a developer with a passion for testing. I've been coding for 14 years and I want to share my experience and learnings with other developers to help them write better software.
I'm a professional PHP, Python and Javascript developer from the UK. I've worked with Django, Laravel, and React, among others. I also maintain a legacy Zend 1 application.
By and large, yes. It's never the best solution and it's no substitute for proper tests. The only other scenario I can think of is one of those urgent cases we all get where functionality needs to be added at short notice and refactored later - it could be handy to make sure that the refactored version produces the same result.
Interesting post, I assume you'd only use this approach for a legacy application that doesn't have any tests? Or do you think it has a wider use case?
By and large, yes. It's never the best solution and it's no substitute for proper tests. The only other scenario I can think of is one of those urgent cases we all get where functionality needs to be added at short notice and refactored later - it could be handy to make sure that the refactored version produces the same result.
I've actually pulled it out into a package if you want to play with the concept- it's at packagist.org/packages/matthewbdal...