接口测试需求分析

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

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

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

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

· 业务功能分析:

正常情况;

异常情况;

· 边界分析:

参数有、无或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注入、恶意攻击等

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:
 
加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数字电源简介

数字电源简介 定义主要应用场景数字电源的基本组成常见算法常见电源拓扑PFCLLC 数字电源与模拟电源对比参考链接 定义 常见定义有以下四种: 通过数字接口控制的开关电源,强调的是数字电源的“通信”功能。可通过I2C或类似的数字总线来对数字信号进行控…

MongoDB-数据库文档操作(2)

任务描述 文档数据在 MongoDB 中的查询和删除。 相关知识 本文将教你掌握: 查询文档命令;删除文档命令。 查询文档 我们先插入文档到集合 stu1 : document([{ name:张小华, sex:男, age:20, phone:12356986594, hobbies:[打篮球,踢足球…

【GCC】6 接收端实现:周期构造RTCP反馈包

基于m98代码。GCC涉及的代码,可能位于:webrtc/modules/remote_bitrate_estimator webrtc/modules/congestion_controller webrtc/modules/rtp_rtcp/source/rtcp_packet/transport_feedback.cc webrtc 之 RemoteEstimatorProxy 对 remote_bitrate_estimator 的 RemoteEstimato…

腾讯云主机优惠价格表(2024新版报价)

腾讯云服务器租用价格表:轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年,540元三年、2核4G5M带宽218元一年,2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月,云服务器CVM S5实例2核2G配置280.8元一年…

好消息,Linux Kernel 6.7正式发布!

据有关资料显示,该版本是有史以来合并数最多的版本之一,包含 17k 个非合并 commit,实际合并的超过1K个。 那么该版本主要有哪边变化呢?下面我来一一列举一下: Bcachefs文件系统已被合并到主线内核,这是一款…

Template Engine-05-模板引擎 Thymeleaf 入门介绍

拓展阅读 java 表达式引擎 logstash 日志加工处理-08-表达式执行引擎 AviatorScriptMVELOGNLSpELJEXLJUELJanino QLExpress 阿里表达式引擎系统学习 Thymeleaf简介 1.1 什么是Thymeleaf? Thymeleaf是一款现代的服务器端Java模板引擎,适用于Web和独…

表的增删改查 进阶(一)

🎥 个人主页:Dikz12🔥个人专栏:MySql📕格言:那些在暗处执拗生长的花,终有一日会馥郁传香欢迎大家👍点赞✍评论⭐收藏 目录 数据库约束 约束类型 NOT NUll 约束 UNIQUE 约束 D…

【FPGA Modsim】 抢答器设计

实验题目: 抢答器设计 实验目的: 掌握应用数字逻辑设计集成开发环境进行抢答器设计的方法;掌握时序逻辑电路设计的过程。 实验内容: 1、设计支持3名参赛者的…

IPv6自动隧道

自动隧道原理 IPv6自动隧道、即边界设备可以自动获得隧道终点的IPv4地址,所以不需要手工配置终点的IPv4地址,一般的做法是隧道的两个接口的IPv6地址采用内嵌IPv4地址的特殊IPv6地址形式,这样路由设备可以从IPv6报文中的目的IPv6地址中提取出IPv4地址。 IPv6OverIPv4自动隧…

vscode安装和基本设置

目录 vscode安装和基本设置1.HTML标签2.标签属性3.HTML基本结构4.安装vscode5.安装Live Server插件6.HTML注释7.文档说明8.HTML字符编码9.HTML设置语言10.HTML标准结构 vscode安装和基本设置 1.HTML标签 标签 又称 元素,是HTML的基本组成单位。标签分为&#xff1…

易懂的方式讲解ARM中断原理以及中断嵌套方法

ARM有七种模式,我们这里只讨论SVC、IRQ和FIQ模式。 我们可以假设ARM核心有两根中断引脚(实际上是看不见的),一根叫 irq pin, 一根叫fiq pin。在ARM的cpsr中,有一个I位和一个F位,分别用来禁止IRQ和FIQ。 先…

SC20-EVB ubuntu14.04 Andriod 5.1 SDK编译下载

1.ubuntu14.04安装环境配置 vi /etc/profile to add export JAVA_HOME/usr/lib/jvm/java-7-openjdk-amd64 export JRE_HOME J A V A H O M E / j r e e x p o r t C L A S S P A T H . : {JAVA_HOME}/jre export CLASSPATH.: JAVAH​OME/jreexportCLASSPATH.:{JAVA_HOME}/lib…

numpy中数组的操作

目录 一:数组的属性 二:翻转数组 三:数组的计算 一:数组的属性 NumPy 数组(通常称为 ndarray)有许多有用的属性,这些属性可以帮助你了解数组的各个方面。以下是一些主要的属性: …

银行数据仓库体系实践(2)--系统架构

UML对系统架构的定义是:系统的组织结构,包括系统分解的组成部分,它们的关联性,交互,机制和指导原则,例如对系统群就是定义各子系统的功能和职责,如贷款系统群可能分为进件申请、核额、交易账务、…

修炼内功——简略分析C程序编译与链接

目录 前言 1. 翻译环境和运行环境 2. 翻译环境:预编译编译汇编链接 2.1 预处理(预编译) 2.2 编译 2.2.1 词法分析: 2.2.2 语法分析 2.2.3 语义分析 2.3 汇编 2.4 链接 3. 运行环境 总结 前言 编译和链接的内容&#…

PyTorch项目源码学习(3)——Module类初步学习

torch.nn.Module Module类是用户使用torch来自定义网络模型的基础,Module的设计要求包括低耦合性,高模块化等等。一般来说,计算图上所有的子图都可以是Module的子类,包括卷积,激活函数,损失函数节点以及相…

几何_直线方程 Ax + By + C = 0 的系数A,B,C几何含义是?

参考: 直线方程 Ax By C 0 的系数A,B,C有什么几何含义?_设直线 l 的方程为axbyc0 怎么理解-CSDN博客 1. A B的含义:组成一个与直线垂直的向量 我们先来看A和B有什么含义。 在直线上取任意两点 P1:(x1…

基于SSM的小儿疾病中医护理系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

自动驾驶中的坐标系

自动驾驶中的坐标系 自动驾驶中的坐标系 0.引言1.相机传感器坐标系2.激光雷达坐标系3.车体坐标系4.世界坐标系4.1.地理坐标系4.2.投影坐标系4.2.1.投影方式4.2.2.墨卡托(Mercator)投影4.2.3.高斯-克吕格(Gauss-Kruger)投影4.2.4.通用横轴墨卡托UTM(UniversalTransve…

Ceph分布式文件系统

目录 1.存储基础 单机DAS存储设备 DAS NAS SAN 单机存储的问题 分布式存储 分布式存储的类型 2.Ceph简介 Ceph优势 Ceph架构 Ceph组件 OSD(ceph-osd) Monitor(ceph-mon) Manager(ceph-mgr) MDS(ceph-mds) PG(归置组) Pool(存储池/资源池/数据池) OSD 存储后…