接口测试用例设计思路

news2024/7/4 5:36:27

(我的公众号“墨石测试攻略”,关注获取软件测试相关知识及整套接口测试实战项目!)

接口测试用例的设计,从功能测试角度来说:首先需要分析接口文档。

现在很多公司都使用swagger来管理接口。swagger中可以查看到接口的描述、请求方式、URL、Header,请求参数、状态码定义、响应示例…

根据这些接口信息,我们在swagger中就可以完成一个接口的测试。当然,为了便于接口的流程化、参数化管理,postman、JMeter仍然是最为推荐的接口测试工具。

单接口测试

1.1 接口的入参

考虑正常的入参及异常的入参。

一般接口文档中会给出详细的请求参数(包括具体有哪些参数、参数类型、长度、是否必填)及示例。

正常入参:参考接口文档,看能否正确返回;

异常入参:包括参数异常、数据异常,使用等价类、边界值等设计方法设计测试用例

(1)参数异常:包括多参、少参、空参、错参…

(2)数据异常:包括数据类型错误、非空参数为空、数据长度不符合、特殊字符校验、是否允许重复值、数值超出允许范围…

1.2 考虑接口的处理逻辑

主要是一些约束条件的分析:

(1)数值限制-如分数限制、等级限制(例:兑换Q币需要积分>50分才可参与)

(2)状态限制-如登录状态(例:同步信息需要先登录账号)

(3)权限限制-如管理员、普通用户权限是一样的(可能通过传不同的token或cookie来进行测试)

(4)关系限制-如绑定关系(例:菜鸟裹裹可以查询绑定号码的物流信息)

1.3 考虑输出结果

验证返回的状态码、返回值的完整性、key对应的value值…

另外,还要验证请求错误时的提示信息,接口处理正确的结果可能只有一个,但是错误异常返回结果有很多情况,如错误提示乱码、错误提示不当导致用户不知道哪里出了问题等

关联(多)接口的业务流程测试

单接口全部调通后,进行多个接口的串联测试。多接口测试更关心业务流和数据流的关系,要对业务流程有足够的了解。

同时,业务流测试建议充分使用参数化,通过设置变量获取上一接口的返回值,提高测试效率。

其他层面:

接口的性能、安全等。

(我的公众号“墨石测试攻略”,关注获取软件测试相关知识及整套接口测试实战项目!)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/458509.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

fMRI时间序列振幅和相位对功能连接分析的影响

导读 目的:fMRI领域的一些研究使用瞬时相位(IP)表征(源自BOLD时间序列的解析表征)考察了脑区之间的同步性。本研究假设来自不同脑区的瞬时振幅(IA)表征可以为脑功能网络提供额外的信息。为此,本研究探索了静息态BOLD fMRI信号的这种表征,用于…

SpringBoot AnnotationFormatterFactory接口+自定义注解实现类型转换

参考资料 自定义AnnotationFormatterFactory实现注解方式类型转换Spring MVC 基于AnnotationFormatterFactory接口实现自定义的规则 目录 一. 前期准备1.1. 自定义转换标记注解1.2 入参form 二. 实现AnnotationFormatterFactory接口,构建格式化Factory2.1 code补全…

【7】一篇文章学习 Linux 中一些硬核的常用知识

目录 一、systemctl二、软链接三、日期(date 命令)四、Linux 的时区(1) 修改时区(2) ntp 五、IP 地址六、主机名七、域名解析八、配置 Linux 的固定 IP 地址(1) 在 VMwareWorkstation 中配置 IP 地址网关和网段(IP 地址的范围)(2)…

[陇剑杯 2021]之Misc篇(NSSCTF)刷题记录④

NSSCTF-Misc篇-[陇剑杯 2021] jwt:[陇剑杯 2021]jwt(问1)[陇剑杯 2021]jwt(问2)[陇剑杯 2021]jwt(问3)[陇剑杯 2021]jwt(问4)[陇剑杯 2021]jwt(问5&#xff0…

洗地性价比高的是哪款?性价比高的洗地机推荐

在如今人工智能随处可见的时代,洗地机已经成为了我们家庭清洁的得力助手,它用高效便捷的清洁方式,对于地面的灰尘或者地板之间的缝隙里的细小垃圾,能够快速清理,省时省力。然而,对于很多消费者来说&#xf…

一文带你学会如何写一份糟糕透顶的简历

我们每个人几乎都会面对找工作这件事,而找工作或者说求职首先就是要写一份简历。今天狗哥将以一个不同的视角带你写一份无与伦比,糟糕透顶的求职简历,说实话,其实几年前,我就是这么写的。 目录 1. 文件名 2. 基本信…

AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

基于蛋白-配体复合物药效团药物设计(Pharmacophore)

基于蛋白-配体复合物药效团药物设计(Pharmacophore) step 1.蛋白-配体复合物准备 点击File-->Import Structures导入之前已经下载好的1IEP.pdb(Abl蛋白和Imatinib的晶体复合物) 蛋白准备:点击Tasks--->Protei…

18、越狱

一、越狱 1.1 越狱 通过iOS系统安全启动链漏洞,从而禁止掉信任链中负责验证的组件.拿到iOS系统最大权限Root权限 1.2 iOS系统安全启动链 当启动一台iOS设备时,系统首先会从只读的ROM中读取初始化指令,也就是系统的引导程序(事实上所有的操作系统启动时都要经过这一步,只是过程…

Pytorch深度学习笔记(十一)卷积神经网络CNN

目录 1.概述 2.单通道卷积 3.多通道卷积 4.卷积层常见的参数 5.代码实现(卷积神经网络训练MNIST数据集) 推荐课程:10.卷积神经网络(基础篇)_哔哩哔哩_bilibili 1.概述 全连接神经网络:完全由线性层串…

最佳实践|如何写出简单高效的 Flink SQL?

摘要:本文整理自阿里巴巴高级技术专家、Apache Flink PMC 贺小令,在 Flink Forward Asia 2022 生产实践专场的分享。本篇内容主要分为三个部分: 1. Flink SQL Insight 2. Best Practices 3. Future Works Tips:点击「阅读原文」查…

android之 Launcher改造仿桌面排版的效果

一,背景 1.1 新接手一个灯光控制项目,其页面和效果还是比交复杂的,其中一个功能就是仿苹果桌面来排版灯具,支持拖拽,分组,分页。 拖动图标的时候判断是否空白位置还是已经有占位了,有的话就把…

pikachu靶场-RCE

RCE漏洞概述 可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。 远程系统命令执行 命令执行漏洞(Command Execution)即黑客可以直接在Web应用中执行系统命令,从而获取敏感信息或者拿下shell权限 更…

Linux离线状态下安装cuda、cudnn、cudatoolkit

目录 1. 下载与安装说明2. CUDA安装3. cuDNN安装4. cudatoolkit安装5. 测试安装成功 1. 下载与安装说明 工具包下载地址 CUDA历史版本下载地址:https://developer.nvidia.com/cuda-toolkit-archivecuDNN历史版本下载地址:https://developer.nvidia.com/r…

logback日志框架集成方式

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、logback是什么?二、使用步骤1.使用方式控制台输出配置文件输出配置html输出配置定期删除配置方式 总结 前言 提示:这里可以添加本文…

C++每日一练:最长递增区间 阿波罗的魔力宝石 投篮

文章目录 前言一、最长递增区间二、阿波罗的魔力宝石三、投篮总结 前言 今天的题太简单,甚至 “最长递增区间” 和 “投篮” 就是一个问题。实在没事干,也给做了!直接上代码算了… 提示:以下是本篇文章正文内容 一、最长递增区间…

LSSANet:一种用于肺结节检测的长、短切片感知网络

文章目录 LSSANet: A Long Short Slice-Aware Network for Pulmonary Nodule Detection摘要方法Long Short Slice GroupingLong Short Slice-Aware Network 实验结果 LSSANet: A Long Short Slice-Aware Network for Pulmonary Nodule Detection 摘要 提出了一个长短片感知网…

【JAVA程序设计】(C00130)基于SpringBoot的社区养老医疗综合服务系统

基于SpringBoot的社区养老医疗综合服务系统 项目简介项目获取开发环境项目技术运行截图 项目简介 基于基于SpringBoot的社区养老医疗综合服务系统共分为三个角色:系统管理员、医生、用户 管理员角色包含以下功能: 用户管理、角色管理、部门管理、字典管…

【Java EE】-JavaScript详解

作者:学Java的冬瓜 博客主页:☀冬瓜的主页🌙 专栏:【JavaEE】 分享: 且视他人如盏盏鬼火,大胆地去走你的道路。——史铁生《病隙碎笔》 主要内容:HTML中引入JS的三种方式。JS语法分析,JS是动态弱…

【Linux高级篇】什么是shell脚本,什么是shell变量

目录 🍁什么是shell 🍂什么是shell脚本 🍂shell脚本能做什么 🍂学习shell需要哪些知识 🍂shell基本规范 🍂shell脚本五种运行方式 🍁shell变量 🍂变量命名规范 🍂shell变…