接口测试需求分析

news2025/1/21 6:26:33

测试接口的时候,可能很多人都会想,按着研发给的接口协议文档来测,不就好了吗?

其实,对于接口的测试,还需要有点深度的需求分析,然后再进行对应的测试。对于接口测试,这里有个不太详细的总结,给大家分享下~

维基百科对【接口测试】的定义如下:接口测试,是集成测试的一部分;即验证被测接口在功能、可靠性、性能和安全方面是否达到预期的软件测试活动。

接口测试,不仅仅是根据接口文档做简单的输入输出的测试。下面给大家看个简单的分析:

· 业务功能分析:
正常情况;
异常情况;

· 边界分析:
参数有、无或null;
参数顺序、个数、类型;
特殊字符;
覆盖必输入字段;
组合可选字段;
字符串长度(0、max、max+1);
业务规则边界;

· 隐形需求:
并发;
DB数据量大;
同时大批量数据;
环境异常;

· 安全性:
SQL注入;
敏感信息是否加密;

· 性能测试:
CPU;
内存;
磁盘I/O;
网络I/O;

举个例子:给某客户端提供群发接口,该接口协议采用HTTP+JSON/XML方式传输,返回参数使用JSON包装好后的数据以便分析,其中的一个接口协议如下:

接口描述:批量发送相同的内容
接口地址:—
请求方式:post
请求参数:
字段名称 数据类型 必填 描述
---- string 是 账号
---- string 是 密钥
---- string 是 被叫号码集合
---- string 是 主叫号码
---- string 是 短信内容
---- string 是 时间戳
返回结果:
参数名称 数据类型 说明
---- string 被叫号码
---- string 生成的短信发送序列号
result string 1:发送成功;0:发生失败
resultMsg string 失败原因

对该接口进行部分简单的分析:

业务功能:

正常使用场景:用户名与主叫号码匹配,其他字段符合规则
......
异常使用场景:用户名或密钥不对等
......

边界分析
业务规则边界:被叫单个/多个(最大个数)/被叫号码异常、长短信边界

参数边界:必输字段都有填写正确/缺少必输字段、缺少时间戳或时间戳为null或格式不对、被叫为空、被叫号码长度

安全性:

敏感字符是否加密、SQL注入、恶意攻击等

如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以加入我们的QQ群:746506216,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。


资源分享

下方这份完整的软件测试视频学习教程已经上## 标题传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

python 高级技巧

闭包 定义双层嵌套函数,内层函数可以访问外层函数的变量 将内层函数作为外层函数的返回,此层函数就是闭包函数 在函数嵌套的前提下,内部函数使用了外部函数的变量,并且外部函数返回了内部函数,我们把这个使用外部函数变…

12小时,教室与生产线接力 复旦MBA科创青干营首个整合实践活动日

针对有志于投身科创事业的复旦MBA学生,复旦管院特别开设“复旦MBA科创青干营”,将科创管理教育与MBA培养体系深度融合。在MBA核心课基础上,学院为学生定制了原创、系统和注重实战的科创课程,并通过科创企业参访、科创先锋论坛、科…

初学者如何打开ABAQUS力学有限元仿真的大门

作者 | 静安 仿真秀专栏作者 导读:明年6月,笔者即将研究生毕业,从最初摸爬滚打一个人自学有限元力学仿真,到现在已经有三年多了。我研究方向是静力学仿真(Abaqus)和基于python的Abaqus二次开发。时至今日&…

MySQL命令行插入数据乱码分析

MySQL命令行插入数据乱码分析 1.起因 在开发过程中, 在linux 的上MySQL 的客户端提交插入数据的SQL, 然后数据在页面展示的时候乱码,在网上查找了一些资料,说是MySQL 的客户端连接设置是Latin1导致的;(当然肯定还是有是由其他的…

【iOS开发-AFNetWorking下的POST和GET】

文章目录写在开头GET 和POSTGET 和POST的区别联系AFNetWorking使用方法DEMOGET请求数据GET方法GET请求到的数据解析POST请求POST的请求测试1POST请求测试二请求的数据拼接POST- DEMO2POST方法2参数理解POST方法2的注意头像对于DATA的转换在Block里进行拼接方法MIME Type的简单认…

QFileInfo(文件信息)和临时文件

QFileInfo提供有关文件在文件系统中的名称和位置(路径),其访问权限以及它是目录还是符号链接等的信息。文件的大小和上次修改/读取时间也可用。QFileInfo还可用于获取有关Qt资源的信息 QFileInfo可以指向具有相对或绝对文件路径的文件。绝对…

FFmpeg实现fmp4+h265 aac切片命令

目录 背景 环境 FFmpeg实现fmp4h265 aac切片命令 使用go创建hls server 使用hls.js demo播放 播放地址:hls.js demo 背景 Chrome在104/105版本后,支持硬解h265,使得hls利用浏览器硬解特性播放h265视频。hls官方要求h265必须使用fmp4格…

Yolov5算法解读

yolov5于2020年由glenn-jocher首次提出,直至今日yolov5仍然在不断进行升级迭代。 Yolov5有YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x四个版本。文件中,这几个模型的结构基本一样,不同的是depth_multiple模型深度和width_multiple模型宽度这两个参…

[网络] TCP协议中的三次握手是什么?利用3次握手的SYN Flood DDOS攻击知道吗?

文章目录前言术语TCP协议三次握手的由来网络协议里的握手阶段Sequence Number是什么?TCP协议三次握手都发送了什么数据?TCP数据包长什么样?SYN Flood DDOS攻击是什么?结语前言 介于TCP协议中三次握手经常会被问到,以及…

NBA体育决策和数据挖掘分析

业务挑战 体育运用大数据主要体现在以下三个方面: 预测比赛结果和奖牌归属;更好地训练运动员 。数据和模型驱动体育决策让获胜和成功变得更有可能,体育统计(Sports Analytics)成为体育竞争的“杀手锏”。最近我们被客户要求撰写关于体育统计…

鲲鹏devkit性能分析工具介绍(一)

鲲鹏devkit性能分析工具介绍(一) 鲲鹏性能分析工具由四个子工具组成,分别为:系统性能分析、Java性能分析、系统诊断和调优助手。 系统性能分析是针对基于鲲鹏的服务器的性能分析工具,能收集服务器的处理器硬件、操作…

从2022安洵杯[babyPHP]看Soap+CLRF造成SSRF漏洞

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、PHP SOAP 二、漏洞成因 三、 题目知识准备 1、PHP Session反序列化 2、题目相关函数 四、[LCTF 2018]bestphps revenge 五、2022安洵杯 BabyPHP 前言 …

基于ASP.net的服装商城设计

目录 海秀衣城系统 2 1.概 述 2 1.1 网上购物的发展 2 1.2 三层架构技术简介 2 2. 系统总体设计 4 2.1 开发以及运行环境 4 2.2项目结构分析 4 2.3系统功能总体结构图 5 2.4系统功能结构分解图 5 3. 数据库设计 6 3.1 数据库设计 6 3.2 数据表 7 4. 模块设计 10 4.1 前端功能模…

SpringCloud微服务实践之七 网关(Gateway)

一、网关基本概念 (一)网关功能 身份认证和权限校验服务路由、负载均衡请求限流 (二)网关技术选型 SpringCloud提供了两个组件都可以实现网关功能: gatewayzuul 其中,Zuul是基于Servlet的实现&#xff…

SQL注入漏洞 | 数字型

文章目录前言MySQL 数字型前言 SQL注入漏洞 | iwebsec MySQL 数字型 页面观察:测试看回显 注入点判断:发现有sql注入漏洞 AND 可在 where 子语句中把两个或多个条件结合起来。如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录…

HBuilder X实现tabBar底部导航记录

首先,打开uniapp官网,找到tarbar官方文档,仔细阅读,具体位置如下,全局配置下面的pages.json页面路由里面找到tabBar,点击查看: 重点注意这两句话: 找到文档我们就可以按照上面的提示…

迭代器模式(Iterator)

参考: 迭代器设计模式 (refactoringguru.cn) [design-patterns-cpp/Iterator.cpp at master JakubVojvoda/design-patterns-cpp GitHub 文章目录一、什么是迭代器模式?二、实现三、优缺点优点缺点一、什么是迭代器模式? 提供一种方法&…

QFont-使用外部字体文件的问题

我们程序里面定义了某个结构体(这里简单描述为AStruct),AStruct包含了一个QFont 类型的成员变量: struct AStruct {QFont ft; }; 在具体业务上,AStruct中的QFont会被传递给QPainter去绘制文本。 保存工程/加载工程时时&#xff0…

用Python写个爬虫,赚了!

前言 编程语言排行榜(Tiobe)发布了11月新榜,Python仍领先Java和C,在全球众多的老牌编程语言中,以其他对手无法企及的极高份额稳居榜单第一位。 榜单数据是客观真实的,当下Python的使用者越来越多,已经远超使用其他十…

【Linux初阶】认识冯诺依曼结构

🌟hello,各位读者大大们你们好呀🌟 🍭🍭系列专栏:【Linux初阶】 ✒️✒️本篇内容:计算机的冯诺依曼组成结构、冯诺依曼结构的数据交换特性,以宏观视角理解冯诺依曼下的网络数据传输…