我正在寻找关于主要针对RESTful Web API设置和执行API测试的一般工作流程的建议。
更具体地说,我有以下难点:
答案 0 :(得分:10)
使用单元测试,您可以检查实现的逻辑以获取请求的数据是否正确,但这还不够。要测试API,比如数据序列化/反序列化到各种格式(JSON,XML,ATOM,...),授权和等等。应检查身份验证,异常处理(将应用程序异常转换为HTTP错误代码)。应从客户的角度测试API。您可以使用可以发送类似于客户发送的请求的工具来实现它,例如jmeter。
API测试应该生成包含请求通过/失败的信息的报告。如果请求失败,应提供答复以供进一步调查。 API测试应该集成到CI中。
API测试应涵盖:
示例
假设有一个带有查询参数的端点 / users :
相关测试方案可以分为两组:有效和无效请求
有效请求(始终检查响应格式):
无效请求: