前言

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服务化,又要考虑调用链的问题。
- 接口调用链的超时处理
- 异常降级处理
- 是否幂等
- 是否影响主流程
- 是否无缝上线

测试-http接口测试点相关推荐

  1. 测试前置条件及测试点

    一.引言 本文档根据目前公司的实际情况,规范了软件产品提交测试的前置条件以及需提交的文档资料,避免造成测试的反复和资源的浪费.另外,文档还明确了各测试阶段需要关注的一些测试点,为我们的软件测试工作明确 ...

  2. jmeter 测试websocket接口(一)

    jmeter 测试websocket接口时,需要对jmeter添加测试websocket的jar包. 下载地址: https://download.csdn.net/download/qq_14913 ...

  3. 移动app测试流程与测试点

    移动app测试流程和测试点 1.接收版本 2.版本送测检查 3.ui测试 4.功能测试 5.性能Test 6.兼容性测试 7.上线步骤测试 8.联调测试 功能测试:各个功能点 测试客户端与pc端的交互 ...

  4. 关于python测试webservice接口的视频分享

    现在大公司非常流行用python做产品的测试框架,还有对于一些快速原型产品的开发也好,很好地支持OO编程,代码易读. Python的更新挺快的,尤其是第三方库. 对于测试人员,代码基础薄弱,用pyth ...

  5. Apache JMeter 测试 HTTP接口

    一.设置基础组件 1. Apache JMeter 测试 HTTP接口流程 原则:简单的http请求而已,例如:PostMan测试一样的 1.添加一个线程组 2给线程组添加一个取样器,用来发送HTTP ...

  6. Apache JMeter 测试webservice接口

    文章目录 Apache JMeter 测试webservice接口流程 一.设置基础组件 1. 添加一个线程组 2. HTTP信息头管理器 3. HTTP请求 4. 添加一个察看结果树 5. 添加一个 ...

  7. 关于测试一个接口的面试题

    ==================================== 很多面试中,都会问道如何测试一个接口?我尝试着用自己现有的知识进行回答,等以后某年某月自己回来看看时自己提升了多少. ==== ...

  8. 使用JMeter测试WebSocket接口

    因为我之前对WebSocket接口也不是很了解,所以本篇文章先简单的概括的说明一下WebSocket的相关概念.在文章的后半部分,进行测试WebSocket接口的步骤说明. 1.什么是WebSocke ...

  9. apache cxf 测试webservice接口

    2019独角兽企业重金招聘Python工程师标准>>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition ...

最新文章

  1. socket第三方库 AsyncSocket(源码注释解读.转)
  2. 通过仿真和综合认识JK触发器(Verilog HDL语言描述JK触发器)
  3. javascript 数组和对象的浅复制和深度复制 assign/slice/concat/JSON.parse(JSON.stringify())...
  4. Java内部类简介.
  5. Ionic3 环境搭建以及基础配置实现(更新中)
  6. layui鼠标放上图片局部放大_老照片修复教程之—裁剪图片大小
  7. SpringMVC用注解写第一个程序HelloSpringMVC
  8. Vue.js - Day4
  9. JVM(2)--OutOfMemoryError实战
  10. CSS Grid中的陷阱和绊脚石
  11. 采用单/双缓冲区需要花费的时间
  12. php如何实现记录步数,微信步数获取-PHP后端部分
  13. QT第三方串口类Win_QextSerialPort,串口工具插拔后无法继续使用问题
  14. The Beauty of DirectX 11 (3) --- constant buffer, buffered/structure buffer
  15. java 读写acr122u_使用ACR122U 从NTAG203Chip 读取数据
  16. css 日语字体,css字体
  17. python是一种跨平台语言_python是跨平台的语言吗
  18. day03 爬取京东信息,bs4
  19. 【JAVA】Map和Set
  20. html四舍五入函数,Javascript四舍五入(Math.round()与Math.pow())

热门文章

  1. 07-HTTPS双向认证及Java案例
  2. 二分查找(上界,下界)
  3. Apollo安装部署
  4. 图灵奖得主Geoffrey Hinton:我的五十年深度学习生涯与研究心得
  5. 如何调用EasyDSS上传点播文件接口?具体操作步骤是什么?
  6. cnn输入层_完全使用忆阻器实现CNN,清华大学微电子所新研究登上Nature
  7. 【实验3 循环结构】7-3 sdut-C语言实验-小树快长高
  8. 谷歌第四代TPU性能实测来了!每秒10万万亿次运算,今年将向谷歌云用户提供服务...
  9. 冯雷老师:唐僧的BISI领导力模型是怎样的?
  10. 景区票务分销系统功能推荐,景区票务系统解决方案