Debugging and unit testing are to different methods to achieve more
The unit testing can be expressed like snapshot checking.
You bring your app in some state, than take a snapshot and compare the
snapshot taken with expected one.
Debugging is more like flow checking. You start your ride at some
point of execution and enjoy, more or less, the way your program is
Both techniques are required.
The unit testing will tell you if your program is on the right state
on every checkpoint.
Debugger can find the paths that are not covered by unit testing.
Since this is about the IDE, I personally use Eclipse (Europa) with
Aptana using rails-debug.
Some times it is convenient to debug from console but it's up to you.
End for the closing it is essential to learn to read the log files and
to use logging as much as possible since some issues are hard to