My rules would be...
Every player going forward who tests positive for steroids/ HGH:
- gets a 1-year suspension without pay
- faces mandatory testing every 90 days for remainder of career
- disqualifies themselves from all future all-star games and HOF
- has to have an asterisk on their uniform directly after their number.
If the penalties are meaningful for the player and their employer, then the testing will be less critical. The threat of being caught would outweigh the 80% likelihood of getting away with it on each individual test.
I really don't see why the player's union doesn't want steroids out of the game. All these cheaters are taking huge amounts of money from the honest guys.
Another thought would be to put a clause in contracts that invalidates them if the players ever tests positive. In a way, the player is committing fraud against their employer by artificially boosting their resume before signing a huge contract.