关于接口测试用例设计的一些思考
Posted 软件测试自动化测试
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于接口测试用例设计的一些思考相关的知识,希望对你有一定的参考价值。
接口测试发现的典型问题
-
传入参数处理不当,引起程序错误
-
类型溢出,导致数据读取和写入不一致
-
对象权限校验出错,可获取其他角色信息
-
状态出错,导致逻辑处理出现问题
-
逻辑校验不完善
-
定时任务执行出错
接口测试用例设计
接口测试用例设计主要针对输入、处理、输出进行考虑
1,针对输入进行设计
对于接口来说,输入就是入参,一般的参数类型:
① 边界内、边界值、边界外三个方面去考虑
② 特殊值处理不当程序异常、类型边界溢出、错误信息返回不正确
① 主要考虑字符串长度和字符串的内容
② 空、特殊字符、数字、表情符号
多个重复值、空、最大范围值
字段错误,字段类型错误、未包含字段、缺失字段
-
数值型
-
① 边界内、边界值、边界外三个方面去考虑
② 特殊值处理不当程序异常、类型边界溢出、错误信息返回不正确
-
字符串
-
① 主要考虑字符串长度和字符串的内容
② 空、特殊字符、数字、表情符号
-
数组链表
-
多个重复值、空、最大范围值
-
结构体:json、字典
-
字段错误,字段类型错误、未包含字段、缺失字段
2、 针对逻辑设计
限制条件
① 数值类型限制,比如购买次数、登录次数、优惠券最大面额、订单取消次数等
② 状态限制:比如是否登录、是否有订单等
③ 关系限制:比如好友关系、关注关系,只能查看好友或者关注人的朋友圈
④ 权限限制:比如销售只能查看和自己绑定客户数据,而管理员可有查看所有客户数据
⑤ 时间限制:比如未支付过20分钟订单自动取消
状态转换分析
① 正常状态迁移:乘客下单,司机抢单,
② 异常状态迁移:乘客刚下的那,司机发起支付,出现异常
-
比如一个出租车订单,从乘客下单、司机抢单、到达起点、接上乘客、到达目的地,发起支付,支付,评价这是一个完整的订单状态转换流程,必须按照这个次序,才能正确流转,一旦打乱其中任何一个状态,就会出现逻辑问题。
接口用例可以这样设计:
-
① 正常状态迁移:乘客下单,司机抢单,
② 异常状态迁移:乘客刚下的那,司机发起支付,出现异常
3、 针对输出设计
-
针对输出结果
一般情况下,接口正常处理的结果可能只有一个,但是异常的处理结果,可能会返回多种错误,那就可以针对不同的错误进行设计
-
接口超时
-
旧版本接口
-
废弃接口
-
接口设计是否合理,比如字段冗余、接口冗余、返回错误信息是否清晰明了、调用是否方便
-
幂等性
推荐学习
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接免费拿走:
① 2000多本软件测试电子书(主流和经典的书籍应该都有了)
② 软件测试/自动化测试标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python编程语言、API接口自动化测试、web自动化测试、App自动化测试(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
上图的资料 在我的QQ技术交流群里(技术交流和资源共享,广告进来腿给你打断)
可以自助拿走,群号953306497(备注“csdn111”)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。
一定一定一定要备注暗号:CSDN111
以上是关于关于接口测试用例设计的一些思考的主要内容,如果未能解决你的问题,请参考以下文章