It would cost less money to test people than it would to pay out welfare to people who use it to buy crack. Drug tests do not take that long to come back, and the actual sample collection takes all of 30 seconds. It in no way violates the fourth amendment because you are submitting to the drug test in order to receive your money. I fail to see your logic on the last point. People who are on welfare usually don't have a job, don't make enough with the job they have, or have a shit load of kids that they cannot support by themselves. If they cant support themselves and their drug habit then why should the tax payers like myself support their drug habit.
It costs money to test people, it takes time to test people, it violates the Fourth Amendment, and the fact that someone uses drugs shouldn't make them any less eligible for welfare than someone who doesn't.
I know as a tax payer I don't want to see my hard earned money going to support some fucking crack whore's addiction.