Employers often think of drug tests of a fail safe way to know if employees are using illegal substance, however those drug tests are not 100%. Most illicit drugs pass through the system within 48 hours, however cannabis use can be detected for up to 12 weeks, so if your employee will test positive chances are it will be for cannabis so it may be best to screen for that drug alone as this will be much cheaper than testing for all illicit substances.
The test can be beaten by a drug user if they have sufficient time to prepare for the test, that is why a lot of times the employer will spring a drug test with little notice, from a few days to literally on the spot.
For a urine test the test can be beaten by drinking a lot of water, a real lot so that the subject is passing only water, the subject will then take vitamin tablets to add color to the urine which now is just vitamins and water, the test will show up negative. However tests can be done against this by testing the creatinine levels in urine
"Creatinine concentration is also checked during standard urine drug tests. Normal creatinine levels indicate the test sample is undiluted, whereas low amounts of creatinine in the urine indicate either a manipulated test or low individual baseline creatinine levels. Test samples considered manipulated due to low creatinine are not tested, and the test is sometimes considered failed."
An obvious way around this would be to take a fair amount of creatine to bring up the levels.
More thorough and expensive is testing from the hair, this can test a wide range of drugs for up to 90 days in the scalp and one year if taken from the body (usually underarms) as this is testing inside the hair shaft there are no known ways to beat this test except for shaving all body and head hair.
In independent studies hair drug testing uncovered 4 to 8 times as many drug users as urinalysis.
The only way for a around this testing is to remove all hair from head and body, then a urine test will have to be implemented.