1. A method for detecting race conditions and atomicity violations, comprising: receiving a set of methods; generating one or more multi-threaded test programs from the set of methods; and executing the one or more multi-threaded test programs in a specialized application to detect race conditions and atomicity violations.