<<How can I tell if a HDD is bad?>>
Of course...there is no 100% effective manner
, unless it's totally dead, IMO. It's pretty easy to diagnose failure of a drive to be detected and/or give any other indication that it's capable of functioning properly.
...and there are key indicators (hard drive noise) which are not to be ignored.
But one of the surest, easiest ways...is to use the diagnostic utilities developed for this purpose by the hard drive manufacturers.
Free Hard Drive Testing Tools - Hard Drive Diagnostics - http://pcsupport.about.com/od/toolsofthetrade/tp/tophddiag.htm
Hard Drive Installation and Diagnostic Tools - http://www.bleepingcomputer.com/forums/topic28744.html