My fiance happens to be a criminal defense attorney, before that, she was an ADA. One of the things she talked to me about, was what a mistake it is, for defense lawyers to put their clients on the stand (guilty or innocent).
There is also the whole issue with making the defendant look like a liar, by tripping him/her up on details when you hit them rapid fire, to the point, where you confuse them, while the jury thinks the defendant is trying to hide something.
There are tons of ways to make someone look bad on the stand, she has made it appear that cops are lying or hiding something, taken apart witnesses, and shredded "experts". A prosecutor that does that to a defendant, has pretty much won their case.
You also get into the 5th amendment side, the way she sees it, once someone invokes their 5th amendment, the jury takes it or acts like its a confession of wrong doing (even though they are not supposed to do so), and the whole point of anything is now wasted, and your guy looks guilty as sin, with nothing to show for it.
Sidenote: She actually once won a case, where her client attacked a lesbian couple during a gay pride parade, with hundreds of witnesses, I still can't believe she pulled that off.......lol
Every defense attorney I know tells their client what I said: if you don’t testify, the jury will want to know why. If the defendant actually committed the crime and the defense attorney is trying to get him off — exactly what you’re talking about — then yes, you don’t want him to testify. The point I’m making is that if you really didn’t do it then there’s little to no risk of testifying, and huge risk of not.