zoukankan      html  css  js  c++  java
  • 关于接口测试用例设计的一些思考

    接口测试发现的典型问题

    • 传入参数处理不当,引起程序错误
    • 类型溢出,导致数据读取和写入不一致
    • 对象权限校验出错,可获取其他角色信息
    • 状态出错,导致逻辑处理出现问题
    • 逻辑校验不完善
    • 定时任务执行出错

    接口测试用例设计

    接口测试用例设计主要针对输入、处理、输出进行考虑

    针对输入进行设计

    对于接口来说,输入就是入参,一般的参数类型

    • 数值型
      • 边界内、边界值、边界外三个方面去考虑
      • 特殊值处理不当程序异常、类型边界溢出、错误信息返回不正确
    • 字符串
      • 主要考虑字符串长度和字符串的内容
      • 空、特殊字符、数字、表情符号
    • 数组链表
      • 多个重复值、空、最大范围值
    • 结构体:json、字典
      • 字段错误,字段类型错误、未包含字段、缺失字段

    针对逻辑设计

    • 限制条件

      • 数值类型限制,比如购买次数、登录次数、优惠券最大面额、订单取消次数等
      • 状态限制:比如是否登录、是否有订单等
      • 关系限制:比如好友关系、关注关系,只能查看好友或者关注人的朋友圈
      • 权限限制:比如销售只能查看和自己绑定客户数据,而管理员可有查看所有客户数据
      • 时间限制:比如未支付过20分钟订单自动取消
    • 状态转换分析

      比如一个出租车订单,从乘客下单、司机抢单、到达起点、接上乘客、到达目的地,发起支付,支付,评价这是一个完整的订单状态转换流程,必须按照这个次序,才能正确流转,一旦打乱其中任何一个状态,就会出现逻辑问题。

      接口用例可以这样设计:

      • 正常状态迁移: 乘客下单,司机抢单,
      • 异常状态迁移:乘客刚下的那,司机发起支付,出现异常

    针对输出设计

    • 针对输出结果

    一般情况下,接口正常处理的结果可能只有一个,但是异常的处理结果,可能会返回多种错误,那就可以针对不同的错误进行设计

    • 接口超时
    • 旧版本接口
    • 废弃接口
    • 接口设计是否合理,比如字段冗余、接口冗余、返回错误信息是否清晰明了、调用是否方便
    • 幂等性

    欢迎大家去 我的博客 瞅瞅,里面有更多关于测试实战的内容哦!!

  • 相关阅读:
    访问的站点提示输入用户名密码
    ASP.NET Session 过期问题
    c#和VB代码转化网址
    整理 css 小技巧
    asp.net当修改header时提示:The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>)
    sql server 2005 replication 设置
    动态加载CSS和Javascript文件 javascript 和asp.net.
    一台机子上安装两个版本的mysql
    sql删除所有表外键和表
    Griview中的删除按钮添加“确认提示”
  • 原文地址:https://www.cnblogs.com/zyjimmortalp/p/12502771.html
Copyright © 2011-2022 走看看