关于接口测试用例设计的一些思考

接口测试发现的典型问题

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

接口测试用例设计

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

针对输入进行设计

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

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

针对逻辑设计

  • 限制条件

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

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

    接口用例可以这样设计:

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

针对输出设计

  • 针对输出结果

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

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

postman接口测试教程: 2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV16L41117wB/?spm_id_from=333.999.0.0&vd_source=6e2d6c374fd551babe1ac6a5e60c5a75

相关推荐
eaglewgs1 小时前
关于AI书写测试用例,谈一下我的思考
人工智能·测试开发·ai·测试用例·agent·测试经验·agent测试开发
啊阿狸不会拉杆4 小时前
《计算机网络-自顶向下方法》3.9 小结 · 课后习题 · Wireshark实验
网络·测试工具·wireshark
岁月失语唯石能言5 小时前
《 Web项目测试实战:博客系统的功能/接口/自动化/性能全流程测试报告》
自动化测试·功能测试·selenium·jmeter·接口测试·压力测试·性能测试
PhotonixBay7 小时前
InGaAs微透镜3D形貌怎么测?共聚焦显微镜在光通信的应用实践
功能测试·测试工具·3d·测试标准
Bug 挖掘机9 小时前
网传阿里天猫超市技术近期迎来调整,前端和测试团队合并为“智能交付”团队
自动化测试·软件测试·功能测试·测试开发·ai测试
2601_9622959910 小时前
Python+Appium 自动化测试:从基础语法到 PO 模式设计,构建稳定测试框架
自动化测试·python·appium·测试框架·po模式
测试19981 天前
如何用appium搭建Android自动化测试框架?
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
慧都小项1 天前
从 Burp Suite Professional 到 DAST:把 Web 安全测试接入持续 AppSec 的工程化路径
测试工具·web安全·网络安全·burp suite
程序员杰哥1 天前
如何做接口测试?
自动化测试·python·测试工具·职场和发展·测试用例·接口测试·postman