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

接口测试发现的典型问题

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

接口测试用例设计

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

针对输入进行设计

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

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

针对逻辑设计

  • 限制条件

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

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

    接口用例可以这样设计:

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

针对输出设计

  • 针对输出结果

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

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

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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
接口测试用例的设计可以按照以下步骤进行: 1. 确定测试目标:明确要测试的接口功能和预期结果。 2. 划分测试范围:根据接口的不同功能和参数,将测试用例划分为不同的模块或功能点。 3. 设计测试数据:确定需要使用的测试数据,包括正常数据、边界值数据、异常数据等。 4. 编写测试用例:根据测试目标和测试数据,编写具体的测试用例,包括输入参数、预期输出、前置条件等。 5. 设置测试环境:搭建测试环境,包括准备必要的测试工具和模拟数据。 6. 执行测试用例:按照设计的测试用例,执行接口测试,并记录测试结果。 7. 分析和报告:根据执行结果,对测试用例进行分析,找出问题并生成测试报告。 在设计接口测试用例时,需要考虑以下几个方面: - 正常情况下的输入和输出:确保接口在正常情况下能够正确处理输入参数,并返回符合预期的输出结果。 - 边界值测试:对于接口的输入参数,要考虑边界值情况,例如最大值、最小值、空值等,确保接口能够正确处理这些特殊情况。 - 异常情况处理:对于非法输入或错误操作,测试接口是否能够正确地进行异常处理,例如返回适当的错误码或错误信息。 - 接口间的调用关系:如果接口之间存在依赖关系,要确保在测试过程中正确模拟这些调用关系,并验证接口之间的数据传递是否正确。 - 并发和性能测试:对于高并发或大数据量的场景,需要设计相应的测试用例来验证接口的并发性能和稳定性。 请根据具体的项目和接口需求,结合以上原则来设计适合的接口测试用例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

测试老憨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值