接口测试用例设计

接口测试流程

需求分析 -> 测试设计 -> 测试用例评审 -> 测试执行 -> 验收 -> 预发布 -> 上线

接口测试用例设计思路

梳理业务流程图,根据流程图中的分支分别考虑不同场景(包括接口超时,接口异常,接口请求成功,接口请求失败)

基本功能流程测试

  • 冒烟测试
    验证主业务的正向流程测试
  • 正向流程测试
    根据画出来的流程图覆盖流程图中的不同场景,分支覆盖,路径覆盖,场景覆盖。覆盖测试时需要结合实际的业务场景,去除根本不会发生的场景

基于输入域的测试

针对接口的入参设计

  • 边界值测试
    边界点和外点,使用边界值和等价类划分
  • 特殊字符校验
    如果入参对特殊字符有要求
  • 参数类型校验
    如果对入参的数值类型有要求的话需要校验,用等价类划分
  • 必选参数校验
    入参如果有必选参数的话,都要设计一条不传参数的用例
  • 组合参数校验
    不同参数的不同组合场景
  • 有效性校验
    如身份证的校验,手机号校验
  • 默认值校验
  • 排重逻辑

接口幂等性

  • 重复提交
    对于涉及到资金的系统,接口幂等性尤其重要
    接口幂等性改造:可以在接口中增加一个唯一性参数,同一个参数值的接口请求只处理一次

故障注入

  • Redis 故障降级测试
    • 例: token 存在Redis中,第一次从数据库取,回写入Redis,第二次直接从Redis取
    • 可以让开发配合Redis故障注入:
      1. 清空Redis数据,发出请求看能否从数据库读数据并回写入Redis
        2.启动Redis恢复数据,看能否从Redis中取出正确的数据
        3.Redis崩溃,数据能否降级到数据库中读取数据
  • 服务故障转移
    1. 数据库故障
    2. 数据库崩溃场景
    3. 接口转移测试 - 接口服务重启, 集群崩溃场景

线程安全测试

  • 并发测试
    并发相同参数的请求是否只有一条请求成功?
  • 分布式测试
    从物理资源的角度
    • 水平扩展
    • 垂直拆分 —— a 只查询一种请求,b 查询另一种请求
  • 数据库读写安全测试
    数据库锁-多个用户对同一个数据操作时对数据加锁
    同时并发的进行更新和插入,删除和插入操作看是否能正常进行相互不影响

接口测试用例要素

  • 用例名称 - 必填
  • 接口地址 - 必填
  • 请求方式 - 必填
  • 前置条件
  • 请求头部
  • 请求参数 - 必填
  • 响应状态码
  • 预期响应结果 - 必填
posted @   来了发发发  阅读(77)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示