[choose] Automatic Contract-Based Testing