随着移动互联网和微服务的迅速发展,大部分企业都采用接口的方式实现客户端和服务端的交互,传统的PC端也逐渐趋向于前后端分离架构。为了应对此种架构下的业务迭代,很多QA团队开始推广接口自动化,甚至是自研接口测试框架。
选型
一个好的接口测试框架可以抽象公共功能,有效应对业务变化,降低接口实现成本。但对于强业务相关的测试团队来说,迭代速度快,业务流程繁杂,接口难以标准化,自动化框架的维护成本非常高。对于小型QA团队来说,专人维护框架的成本过高,而留给业务测试同学编写自动化测试用例的时间又比较少。有效的接口测试需要和业务强挂钩,随着业务变更及时更新,否则接口测试就丧失了存在的意义。
面对这种情况,可以考虑采用和扩展业界已有的接口测试工具Jmeter来快速完成自动化框架构建功能。Jmeter诞生于2001年,目前已更新到5.x版本,他功能强大并且开源免费:
• 录制&回放:BlazeMeter可实现录制和脚本自动生成
• 多协议支持:支持 http、https、jdbc、jms、ftp 等等协议
• 参数化和断言支持:提供多种参数化函数和多种格式断言组件
• 图形展示:提供多种结果展示
• 易于安装:jmeter 下载解压即可用,且支持多种平台Windows/Mac/Linux
• 高扩展性:jmeter 支持用户自定义测试脚本,Beanshell/Javascript/Groovy
选定工具以后就可以在团队中进行落地和推广,首先要明确接口测试的流程,然后是多人协作时用例的组织和复用。
接口测试流程
接口测试流程和手动测试/UI测试流程类似,但侧重点不同: