Effective and Efficient API Misuse Detection via Exception Propagation and Search-Based Testing