当前位置:网站首页>如何设计好接口测试用例?教你几个小技巧,轻松稿定
如何设计好接口测试用例?教你几个小技巧,轻松稿定
2022-07-06 18:48:00 【小梧敲代码】
接口测试是项目测试的一部分,正如其名,它测试的主要对象是接口,是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与所测系统之间以及内部各系统之间的交互点。测试的重点是检查数据交互、传递、和控制管理过程以及系统间的相互依赖关系等。
接口测试一条请求,不同参数组合,可能就变成几十条用例,一不小心写几个接口,用例数就上百了,再没完没了的写下去就恶心了。怎么办?
在设计测试用例时候我们可以根据项目业务功能情况进行主次分析后,划分优先级,先正向思路,再反向,进行归类划分,最后有时间再考虑是否要编写那些优先级比较低的用例,必要的时候可以画下思维导图,思路清晰了再进行编写。
在执行的时候也按优先级情况进行执行,整个层次就分明了,用例的管理及维护也变得轻松起来。
1.测试用例的等级划分
下面是我在实际测试过程中总结的等级顺序:
1) 主体业务功能接口正常典型值用例的优先级为1(用于冒烟测试的用例)
2) 各模块主功能的正常典型值用例的优先级为2
3) 除了的正常典型值用例之外的正用例及所有异常用例的优先级为3
4) 可用性测试以及入参默认值以及开发做了限制处理的参数类型、开发自测容易发现的错误等测试的优先级为5,最低优先级
当然以上写下来你会发现还是好多啊,这时候应该思考下你设计的这些部分用例是否是真的有实际意义?有没有考虑到实际用户使用场景、需要?是否有可能会出现这种场景?程序员对于这些字段有没有做了限制,他们是不是保证不会犯这样那样的错误,如果他们已经做了控制保证不会出现你设计的哪几种异常情况,你还何必多此一举?四不四?
这时候你可能说,不对啊,测试的时候,我的上级就跟我说要根据测试方法组合一下,各种情况都测一下,你那是UI层测试吧。接口测试用例的设计不是业务层,不能纯根据数学的排列组合,还要根据实际情况做一下减法。
2.测试用例的筛选
So…我们需要对用例做一次筛选,接口测试属于更底层一点的测试,当然所有手工测试方法都用的上,但接口参数数据需对每个参数根据测试接口的实际的功能进行分析,需要符合业务逻辑的情况下进行逻辑组合排列,有些情况,本身通过代码的设计,做了些限制,错误是不会出现在UI层滴
根据测试方法以及上一篇博客写的关于数据设计写出用例,做一下如下筛选:
1) 剔除不重要的接口
2) 异常系用例根据是接口本身兼容异常情况还是有前端控制进行去留
3) 根据接口文档,实际业务情况,场景,接口要实现的功能进行选择
4) 开发协助再筛选一遍
3.测试原则
1) 基础配置,如域名,环境配置等,单独文件配置,方便不同环境测试,脚本维护
2) 明确接口实现什么样的功能,实际需要什么样的功能。是否一致
3) 接口测试数据太多,用数据驱动模式更有层次,且易维护
4) 要众多用例中选出冒烟测试用例及可用于性能测试的用例
5) 先单接口测试,在多接口业务测试
6) 测试完成后,需要清理脏数据
如何设计接口测试用例?
首先,明确出发点。和所有的测试一样,接口测试出发点是你要证明所测的程序是错误的。以这个出发点为导向,你的设计行为就会尽量朝这个方向发展,更易发现问题,不会出现大方向的偏差。
其次,选择好测试对象。对于一个系统做接口测试选择好的测试对象是接口测试关键。一个系统有无数的接口,每个接口如果分别测试,那将是很痛苦的一件事情,不光繁琐浪费,而且任何一个内部接口的变动,都将导致我们用例的不可用。
这里推荐把整个系统作为一个整体,选择整个系统提供给外部使用、交互的最外层接口作为你的测试对象,以此为测试对象的用例将有很好的健壮性,并且更高效。
另外,根据数据的流向,又可将这些最外层的接口分为两类:一类是数据进入系统的接口;一类是数据流出系统的接口。
进入系统的接口实际是我们用例的执行调用的接口。可通过变化参数对这些接口进行调用,模拟外部的使用;而流出的接口则是我们用例真正该验证的点。
数据从哪里流出,流出时的状态如何,此时系统又是什么状态都是我们所应该验证的。
最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!

这些资料,对于想转行做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……
如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。
| 点击文末小卡片领取 |
敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。
自学推荐B站视频:
零基础转行软件测试:自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!
边栏推荐
- 云原生混部最后一道防线:节点水位线设计
- Application analysis of face recognition
- ODBC database connection of MFC windows programming [147] (with source code)
- TiFlash 源码阅读(四)TiFlash DDL 模块设计及实现分析
- 如何从0到1构建32Core树莓派集群
- 机器人队伍学习方法,实现8.8倍的人力回报
- Web3的先锋兵:虚拟人
- 6-6漏洞利用-SSH安全防御
- Detailed explanation of line segment tree (including tested code implementation)
- 4 -- Xintang nuc980 mount initramfs NFS file system
猜你喜欢

Draco - glTF模型压缩利器
![leetcode:736. LISP syntax parsing [flowery + stack + status enumaotu + slots]](/img/0d/e07fe970167368040eb09b05c3682e.png)
leetcode:736. LISP syntax parsing [flowery + stack + status enumaotu + slots]

压缩 js 代码就用 terser

阿里云易立:云原生如何破解企业降本提效难题?

Lumion 11.0软件安装包下载及安装教程
![[paper reading | deep reading] rolne: improving the quality of network embedding with structural role proximity](/img/21/59c4d61b22e7d021b7a72a64a16b48.png)
[paper reading | deep reading] rolne: improving the quality of network embedding with structural role proximity

Word wrap when flex exceeds width

Alibaba cloud middleware open source past

unity 自定义webgl打包模板

fiddler的使用
随机推荐
[xlua notes] array of lua to array of C #
New generation cloud native message queue (I)
Sensor: DS1302 clock chip and driver code
3--新唐nuc980 kernel支持jffs2, Jffs2文件系统制作, 内核挂载jffs2, uboot网口设置,uboot支持tftp
[paper reading | deep reading] anrl: attributed network representation learning via deep neural networks
新一代云原生消息队列(一)
A new path for enterprise mid Platform Construction -- low code platform
Untiy文本框的代码换行问题
Schedulx v1.4.0 and SaaS versions are released, and you can experience the advanced functions of cost reduction and efficiency increase for free!
Introduction to RC oscillator and crystal oscillator
[unity] upgraded version · Excel data analysis, automatically create corresponding C classes, automatically create scriptableobject generation classes, and automatically serialize asset files
How to build a 32core raspberry pie cluster from 0 to 1
How do I dump SoapClient requests for debugging- How to dump SoapClient request for debug?
Gee upgrade can realize one piece of run tasks
ODBC database connection of MFC windows programming [147] (with source code)
The mega version model of dall-e MINI has been released and is open for download
go swagger使用
解密函数计算异步任务能力之「任务的状态及生命周期管理」
CSDN 夏令营课程 项目分析
Apifox,你的API接口文档卷成这样了吗?