• 一、接口测试作用

    • 提前介入测试,更早发现问题
    • 发现更底层的问题
    • 检查服务器的异常处理能力,提高接口健壮性
  • 二、接口测试流程

    • 需求评审(参与人:产品、研发、测试、设计、埋点等)

    • 技术方案评审(参与人:研发、测试等)

      • 了解技术实现:技术选型、架构、数据库表设计、前后端交互、技术难点、风险点、涉及哪些接口/服务改动、是否需要并发测试
    • 研发开发接口,提供swagger接口文档

    • 测试编写接口测试用例

      • 编写原则:接口测试用例设计应该满足需求文档,且对异常场景进行友好处理;且测试这个接口是否按照接口文档开发。
    • 测试接口文档&初步测试接口

      • 接口文档评审,规范的接口文档需要包含(主要分析请求与响应):

        • 接口名称、url、请求方式,请求参数(名称、含义、类型,是否必填,是否有默认值,取值范围,示例demo)
        • 响应状态码、响应参数(名称、含义、类型、取值范围、示例demo)
    • 前端接口测试&Mock数据

      • 接口层面的测试,确保前端按照后端的要求正确地进行了调用
      • 可以利用Charles对前端发送的请求进行抓包
    • 后端接口测试&业务逻辑覆盖

    • 接口性能调优

    • 接口异常机制

    • 接口版本控制

    • 开始做接口自动化

  • 三、接口测试用例设计

    • 用例设计流程:需求分析->接口文档分析->用例设计->划分用例优先级
    • 用例设计要素
      • 功能模块、描述、优先级、前置条件、请求方式、请求路径、请求头、请求参数、预期状态码、预期结果、实际结果、是否通过
    • 用例设计优先级
      • 优先级-针对所有接口

        • 1:暴露给其他系统、第三方调用的接口
        • 2:系统内部调用的核心功能
        • 3:系统内部调用的非核心功能
      • 优先级-针对单个接口
        • 正向测试用例优先,逆向用例次之
        • 是否需要满足前提条件 > 是否携带默认值参数 > 参数是否必填 >参数类型校验 > 参数数据类型自身的数据范围值限制校验
    • 用例设计思路
      • 输入
      • 接口处理逻辑
      • 输出
        • 状态码
        • 接口超时
          • 未进行超时处理,导致流程阻塞
          • 超时后又收到接口返回,导致逻辑出现
      • 安全和访问权限测试
        • 敏感信息是否加密(身份证号、密码等,前后端数据传输是否加密,日志信息是否加密)
        • 越权测试
          • 横向越权:获取同级别角色的权限(用户A可以访问用户B的敏感资源,如地址)
          • 纵向越权:低权限角色获得高权限角色的权限
        • sql注入
        • 请求频率
        • url是否包括敏感信息
        • 文件漏洞
          • 文件类型限制,文件大小限制、文件个数限制、MinmeType检测、文件重置
      • 性能测试
        • qps
        • 响应时间
        • 吞吐量
        • 并发数量
        • 服务器资源使用率(cpu、memory、IO、Network)
      • 异常测试
        • 幂等(重复提交)
        • 并发测试
        • 事务测试
        • 分布式测试
        • 环境异常
        • 大数据量测试(同时处理大批数据的测试、DB数据量很大时,测试DB操作)
        • 第三方服务异常(在后端代码中调试模拟第三方服务异常)
    • 用例编写工具
      • 使用excel:可通过代码读取excel数据,使自动化更方便
      • 使用xmind:层级清晰,易读性高
  • 四、接口测试方式

    • 手动测试

      • postman
    • 代码测试
      • python的requests
      • Java的httpclient
  • 五、测试数据

    • 在数据库中改
    • 通过代码调用业务接口生成
    • 通过easymock模拟接口
  • 六、接口测试质量评估标准

    • 业务功能覆盖是否完整
    • 参数校验是否达到要求
    • 接口异常场景覆盖是否完整
    • 接口覆盖率是否达到要求
    • 代码覆盖率是否达到要求
    • 性能指标是否满足要求
    • 安全指标是否满足要求

接口测试流程和用例设计相关推荐

  1. 接口测试流程及用例设计

    接口测试流程及用例设计 接口测试是整项目测试过程中非常重要的一环,测试的对象是接口,所以可以很早的介入测试,对代码逻辑进行全面验证,更早的发现程序的问题,比UI测试效率更高,并且更容易验证极端和异常的 ...

  2. 接口测试要点及用例设计

    接口测试要点及用例设计 文章目录 接口测试要点及用例设计 一.接口测试 二.接口测试用例设计 提示:以下是本篇文章正文内容,下面案例可供参考 一.接口测试 测试点:功能.异常处理.安全.性能.流程 测 ...

  3. 接口测试简介及用例设计思路

    一.接口测试的简介和分类 接口测试就是测试系统组件接口之间的一种测试 分类: 1.测试外部接口:测试被测系统和外部系统之间的接口(只需要测试正例即可) 2.测试内部接口:①内部接口只提供给内部系统使用 ...

  4. 自动化测试流程以及用例设计

    自动化测试的流程 我们如果想要学习自动化测试流程,就要了解自动化测试的流程,具体流程如下: 需求分析 挑选适合做自动化测试的功能 设计测试用例 搭建自动化测试环境 设计自动化测试项目的架构 编写代码 ...

  5. 【测试】详解接口测试(2)- HTTP接口用例设计与测试方法(拿B站练手)

    文章目录 前言 接口测试是什么 HTTP接口的测试用例设计 接口用例设计小结 HTTP接口的测试方法 手工测试 自动化测试 接口测试策略 结束语 前言 大家好,我是洋子.在之前的文章<详解接口测 ...

  6. java接口自动化(二) - 接口测试的用例设计

    1.简介 在这篇文章里,我们来学习一下接口测试用例设计,主要是来学习一些用例设计要点.其实说白了,接口用例设计和功能用例设计差不多,照猫画虎即可.不要把它想象的多么高大上,多么的难,其实一样,以前怎么 ...

  7. 软件测试流程及主要用例设计方法

    软件测试流程及主要用例设计方法 测试新手人门,首先要掌握测试的流程和实际运作项目流程和基础的用例设计方法. 掌握测试和项目流程是了解研发过程中测试的主要工作:掌握最主要的用例设计方法就是掌握测试岗位最 ...

  8. 接口自动化【 接口测试的用例设计 】

    目录 1.前言 2.接口测试范围 3.自动化接口测试范围 4.自动化接口测试用例设计 5.环境异常测试 6.小结 1.前言 在这篇文章里,我们来学习一下接口测试用例设计,主要是来学习一些用例设计要点. ...

  9. 【转】Postman系列二:Postman中get接口实战讲解(接口测试介绍,接口测试流程,头域操作)

    一:接口测试介绍 接口测试:就是针对软件对外提供服务的接口输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能和接口描述文档的一致性. 接口测试好处:接口测试通常能对系统测试的更为彻底,更高的保障 ...

  10. 接口报params province error_Python接口测试实践之用例封装及测试报告生成

    一.首先,我们想,什么是 API 测试? API 测试其实是一种用程序或工具来发送数据,同时验收系统的返回值的方法.这种测试更偏向于业务实现逻辑.常见的网络协议有 TCP.Http.webservic ...

最新文章

  1. loadrunner提高篇 - 结果分析实践
  2. centos7 python3.6升级到3.7_Centos7下把python 2.7升级到python 3.6(升级过程遇到的一些相关问题)...
  3. 12 信息2班 《基于Android的软件开发》课程成绩
  4. C/C++中单井号与双井号的使用
  5. ubuntu 16.04 配置Python2.7 和 Python3.5 同时调用OpenCV
  6. Linux内核提供了三种不同形式的中断底半部实现机制:软中断、tasklet和工作队列。...
  7. Scala学习03——基础语法
  8. python 微信公众号发文章_Python抓取微信公众号全部文章
  9. FFmpeg 2 - ffplay、ffprobe、ffmpeg 命令使用
  10. 204页数字化转型:集团企业信息化规划方案
  11. java中vo_java中的vo是什么
  12. 数据分析师面试题目_拼多多面经分享:24个「数据分析师」岗位面试题和答案解析...
  13. 图片太大了怎么改小kb?
  14. 3D目标检测-二阶段方法(region proposal-based Methods)之基于语义分割的方法(Segmentation based)解读
  15. 如何查找一篇论文的实现代码从而复现论文?以及如何查找一篇论文被哪些论文引用?
  16. word如何删除空行和全角空格_word中删除全角空格和空行
  17. Couldn‘t delete the database.MySQL said: Error dropping database (can‘t rmdir ‘./test‘, errno: 66)
  18. 小新pro16独显版安装NVIDIA驱动
  19. Oracle 实验:建立和配置Oracle数据库服务器
  20. matlab坐标值旋转平移

热门文章

  1. 按键精灵注册大漠插件
  2. MATLAB自带机器学习算法汇总
  3. 【软件工程】 详细设计
  4. 数电基础-数字电路芯片种类
  5. 【计算机组成原理】中央处理器(三)—— 数据通路
  6. nRF52840脱坑指南
  7. OpenOffice实现word文档在线预览
  8. Java集合容器面试题(2020最新版),深入理解linux内核百度网盘
  9. 【leetcode】中文版题库一刷ing
  10. 如何从网页上下载内嵌的PDF文件