What I meant was that contracts in a language like C# give me the ability to statically verify the program at compile time. It is not a "nicer way to add conditional testing logic" but a way to formally prove correctness in my programs.
In some cases, sanity checking can happen up front/at compile time. In other cases, these must occur at runtime.
The Pragmatic Programmer has a whole section on contracts; it is pretty good.