Testing has become more necessary in the context of Continuous Integration and automated building. You can't have those without test coverage.
On the other hand, TDD is rather difficult with tools that doesn't allow you to develop inside the debugger, which is basically everything out there that is not Smalltalk. It's no surprise TDD was born in Smalltalk. I don't agree with the notion of testing the full system, including DBs, I/O, etc. I'd also mock as few as possible. Constraining yourself to test without external dependencies and without mocking (as far as possible) helps you build loosely coupled systems, with a lot of interchangeable parts (pluggables/strategies/etc.). Though as David says, testing is not a religion nor a dogma, and sometime you include a separate set of tests to test the WHOLE layers of your system. But those tests are run separately. Regards! Esteban A. Maringolo 2014-04-23 12:35 GMT-03:00 Sven Van Caekenberghe <s...@stfx.eu>: > More or less what I think: testing is necessary and should be pragmatic & > fun, not a dogma > > http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live-testing.html > >