A general framework for web API testing