Check the cables first. A corroded ground cable will act the same way. And not just the ends, I've seen them corrode in the middle before.
Mine did that, but it was a bad (corrosion) connection at the back of the battery switch; the connection at the battery itself looked perfect.