Their are two different kinds of starters, ones that have bendix gears, which when the motor turns, then bendix gets thrown against the starter ring, and starts the engine, the other type, is where when the selenoid is engaged, it turns the motor, and uses an electro magnet to push the the gear in the starter motor, against the starter ring, if you have the second type, and the selenoid is not working, then it will do exactly as you describe. Because in shorting across the terminals of the selonoid, you are not activating the selonoid, but by passing it, if it was a bendix gear on the starter, and you did that, the bendix would still engage the starter ring, and start the engine. Its not that common for selonoids to pack up, you should check it getting power, their will be one small wire running to it, check their is voltage at that wire, when you hit the start button, if you dont get voltage, run a wire direct from the battery live, and touch that, and see if it works.