what are the types of api testing