测试-http接口测试点

前言

2015年开始接触QA这个行业,从实习到正式入职,一直都在Qunar的QA岗位上。回顾这两年多的工作经历(中间回学校一段时间),虽然做了许多自认为很高大上的东西,但是晋升答辩中被问到的许多基础问题,却成了自己最薄弱的一项。所以现在更想把更多的经历去放到基础知识的巩固整理上,将自己的知识形成体系,树立自己的方法论。

答辩中被问到:给你一个dubbo接口,如何进行测试?这个问题在答辩前自己也进行了整理相关的wiki,从配置、代码、系统等多角度都进行了测试点的总结,但是答辩中回答的也不是很流畅,抛开因为当时紧张的原因,其实最根本的还是自己的方法论并不是特别完整,还需要进一步的巩固。所有出于这个原因的考虑,想从http、rpc、mq三个角度去总结相关测试点。是否还要总结数据库相关的测试点,这个以后再考虑。

这是第一篇,关于http的测试总结。

checklist

checklist对QA来说一定不陌生,我们做事之前都可以写一个checklist,来减少我们所犯的错误。
那么对于一个http接口又有哪些check点呢?

  1. 功能
  2. 性能
  3. 并发
  4. 日志
  5. 监控
  6. 安全
  7. 系统结构

以上是我能想的一些类别,欢迎各大牛随时补充。

1.功能

这部分我们必须实现产品提出的所有需求点,如果不能实现,必须在需求阶段就沟通好。
这里跟多的是QA对业务的理解,能够考虑到各种业务情景,并且特别要关注边界测试点。

2.性能

性能的质量是需要开发进行保证的,对于QA而言我们仅仅是发现其中的性能问题。我们的手段你会第一时间想到压测,但是在Qunar这种快节奏的公司而言,并且我所负责的是售后相关的业务,本身的性能问题就不多,所以更多的是通过code diff进行发现(Qunar的测试开始于diff代码,开发需要给QA讲代码,QA会通过代码发现bug、增加测试点等),根据diff指出常见的性能问题。
这里我们要关注http接口的

  • qps是多少?
  • 接口响应的平均时间与最大时间?
  • 会不会因为其他因数有所变化?
  • 新接口的上线会不会影响现有功能的性能?

3.并发

  • 是否涉及到并发问题
  • 是否需要加锁

4.日志

  • 入参
  • 出参
  • 异常堆
  • 便于查询的业务日志

5.监控

  • 访问总数
  • 异常
  • 时间
  • 业务成功
  • 业务失败
  • 特殊要求

6.安全

安全其实要分的东西就很多种了
- 协议的选择:http or https
- 业务权限:登入权限、操作权限、登入过期时间
- 敏感信息:特殊信息的加密包括日志、参数、数据库存储
- 请求类型:get or post
- ip白名单:白名单是网关出口ip,并不是工程所在ip
- sql注入
- js注入
- CSRF
- 解码

7.系统结构

这部分其实是最难的,因为要考虑到系统整体的架构。许多公司都会选择ng作为反向代理服务器,这里就要考虑相关配置;如果是前后端分离,rpc服务化,又要考虑调用链的问题。
- 接口调用链的超时处理
- 异常降级处理
- 是否幂等
- 是否影响主流程
- 是否无缝上线

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值