I dont think a debugger can ever replace TDD for two reason a) Tests are faster way to find bugs that don't want to be found ;)
b) Tests are more than debugging tools (A) If you have already created a large suite of tests then all it takes is to fire those tests and just wait for the result to come out. Much fastert than going one by one bug. Also I dont know if the same applies for smalltalk but when i was coding for python not all code was executed and so I did not see all the bugs my code contains. So I had to test the app myself in many diffirent ways and I quickly found out that writing tests was way faster in the long run. (B) tests also make sure that your code behaves the way you want to behave and produces the result you want to produce. It may not be a bug per se, just a weird behavior. They also set a design pattern for your code to follow in the future. Generally speaking I use TDD for long code or code that is going to be maintained in the long run and get larger and larger. I think in that scenario TDD really excells. TDD is very popular in python, its part of the main library cpython(unittesting.py) comes with and there is also a third party library called "Nose" that even offer more features. I think TDD helps you keep your sanity in the long run especially with big projects and complex code. Debuggers are more like microscopes while i see TDD more like Satelites on orbit. ;) -- View this message in context: http://forum.world.st/Pharo-dev-Necessity-of-TDD-with-Smalltalk-tp4691867p4691929.html Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
