Each unit-test expresses code constraints/invariants(states, etc) in declarative form. Unit-tests could be checked statically as well as dynamically.