接口测试意义及工作流程

一、为什么要做接口测试?

一)、接口测试的作用

1、接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互。

2、测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

二)、接口测试的意义

1、按照分层测试模型,处于中间层的接口测试,在稳定性,效率,成本,技术,实施难度上综合来讲,是收益最大的。

2、相较于传统的UI层次的测试,接口测试把测试在时间上、架构上提前了,并且能够覆盖到一些UI测试无法触及的功能点,提高了测试的覆盖率,对质量控制提升了信心。

3、接口测试也更容易实现自动化持续集成,支持后端快速发版需求,利于CT(持续测试)的开展。

三)、为什么做接口测试?

1.越底层发现bug,它的修复成本是越低的。

2.很多系统前后端架构是分离

2.1 前端随便变,接口测好了,后端不用变,前后端是两拨人开发的。

2.2 检查系统的安全性、稳定性,前端传参不可信,比如京东购物,前端价格不可能传入-1元,但是通过接口可以传入-1元。

2.3 只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前面实在太容易), 需要后端同样进行控制,在这种情况下就需要从接口层面进行验证。

2.4 前后端传输、日志打印等信息是否加密传输也是需要验证的,特别是涉及到用户的隐私信息。

3、接口持续集成是为什么能低成本高收益的根源

接口测试相对容易实现自动化持续集成,且相对UI自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。

二、接口测试工作流程

一)、测试流程

1、分析接口文档和需求文档(接口说明、请求方式、请求URL、请求参数、返回数据、返回实例)

2、接口用例设计

3、编写接口测试用例

4、接口测试执行

5、输出接口测试报告

二)、如何快速评估自己的测试用例覆盖率:

1、参数验证是否完整(包括各种边界和业务规则)

2、业务需求点覆盖是否完整(单接口业务功,依赖接口业务功能)

3、接口异常场景覆盖是否完整(数据的异常)

三)、接口测试用途

1、回归测试

2、非功能性测试

四)、API测试用例设计

测试点测试内容举例
入参校验---传递不同的入参,检查返回值是否正确【必选】入参等于空字符串/null
入参类型(字符串、数值、布尔、数组、对象)
入参长度(字符串最小/最大长度)
入参值域(数值最小/最大值)
入参是否在枚举值范围内
入参存在默认值
入参等于0/负数
入参组合(参数之间是否存在关联)
入参符合一定规则(比如账号只能由字母、下划线组成)
入参包含特殊字符
业务逻辑校验---根据业务场景去设计【必选】查询不存在的数据,应该返回空结果
数据状态不符合预期,不允许修改或删除
返回值校验【必选】返回状态码校验
新增类接口建议校验新生成的数据标识不为空
更新或删除类接口建议校验返回消息中 success 为 true
列表查询类接口建议校验返回的查询记录数是否正确,排序规则是否正确
数据详情类接口建议校验核心字段数据准确性
幂等---检查幂等逻辑正确性【可选】是否需要支持幂等(读接口一般不需要)
前端重复提交
接口超时重试
消息重复消费
稳定性---检查可用性策略和性能指标合理性【可选】可用性(限流、熔断、降级)
性能(qps、rt、fail、机器资源、中间件资源、存储资源)
兼容性---检查变更接口兼容性【可选】入参兼容性(入参字段只能新增,不允许修改删除)
返回值兼容性(返回值字段只能按顺序新增)
功能兼容性(兼容老功能)
数据兼容性(兼容老数据)
透明性【可选】接口对调用方透明
可维护性【可选】检查日志和变更记录
异常日志
接口变更记录
监控告警【可选】检查监控告警配置
性能监控(qps、rt)
业务监控(错误码、业务指标)

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啊Sei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值