接口测试流程和用例设计
一、接口测试作用
- 提前介入测试,更早发现问题
- 发现更底层的问题
- 检查服务器的异常处理能力,提高接口健壮性
二、接口测试流程
需求评审(参与人:产品、研发、测试、设计、埋点等)
技术方案评审(参与人:研发、测试等)
- 了解技术实现:技术选型、架构、数据库表设计、前后端交互、技术难点、风险点、涉及哪些接口/服务改动、是否需要并发测试
研发开发接口,提供swagger接口文档
测试编写接口测试用例
- 编写原则:接口测试用例设计应该满足需求文档,且对异常场景进行友好处理;且测试这个接口是否按照接口文档开发。
测试接口文档&初步测试接口
- 接口文档评审,规范的接口文档需要包含(主要分析请求与响应):
- 接口名称、url、请求方式,请求参数(名称、含义、类型,是否必填,是否有默认值,取值范围,示例demo)
- 响应状态码、响应参数(名称、含义、类型、取值范围、示例demo)
- 接口文档评审,规范的接口文档需要包含(主要分析请求与响应):
前端接口测试&Mock数据
- 接口层面的测试,确保前端按照后端的要求正确地进行了调用
- 可以利用Charles对前端发送的请求进行抓包
后端接口测试&业务逻辑覆盖
接口性能调优
接口异常机制
接口版本控制
开始做接口自动化
三、接口测试用例设计
- 用例设计流程:需求分析->接口文档分析->用例设计->划分用例优先级
- 用例设计要素:
- 功能模块、描述、优先级、前置条件、请求方式、请求路径、请求头、请求参数、预期状态码、预期结果、实际结果、是否通过
- 用例设计优先级
- 优先级-针对所有接口
- 1:暴露给其他系统、第三方调用的接口
- 2:系统内部调用的核心功能
- 3:系统内部调用的非核心功能
- 优先级-针对单个接口
- 正向测试用例优先,逆向用例次之
- 是否需要满足前提条件 > 是否携带默认值参数 > 参数是否必填 >参数类型校验 > 参数数据类型自身的数据范围值限制校验
- 优先级-针对所有接口
- 用例设计思路
- 输入
- 接口处理逻辑
- 输出
- 状态码
- 接口超时
- 未进行超时处理,导致流程阻塞
- 超时后又收到接口返回,导致逻辑出现
- 安全和访问权限测试
- 敏感信息是否加密(身份证号、密码等,前后端数据传输是否加密,日志信息是否加密)
- 越权测试
- 横向越权:获取同级别角色的权限(用户A可以访问用户B的敏感资源,如地址)
- 纵向越权:低权限角色获得高权限角色的权限
- sql注入
- 请求频率
- url是否包括敏感信息
- 文件漏洞
- 文件类型限制,文件大小限制、文件个数限制、MinmeType检测、文件重置
- 性能测试
- qps
- 响应时间
- 吞吐量
- 并发数量
- 服务器资源使用率(cpu、memory、IO、Network)
- 异常测试
- 幂等(重复提交)
- 并发测试
- 事务测试
- 分布式测试
- 环境异常
- 大数据量测试(同时处理大批数据的测试、DB数据量很大时,测试DB操作)
- 第三方服务异常(在后端代码中调试模拟第三方服务异常)
- 用例编写工具
- 使用excel:可通过代码读取excel数据,使自动化更方便
- 使用xmind:层级清晰,易读性高
四、接口测试方式
- 手动测试
- postman
- 代码测试
- python的requests
- Java的httpclient
- 手动测试
五、测试数据
- 在数据库中改
- 通过代码调用业务接口生成
- 通过easymock模拟接口
六、接口测试质量评估标准
- 业务功能覆盖是否完整
- 参数校验是否达到要求
- 接口异常场景覆盖是否完整
- 接口覆盖率是否达到要求
- 代码覆盖率是否达到要求
- 性能指标是否满足要求
- 安全指标是否满足要求
接口测试流程和用例设计相关推荐
- 接口测试流程及用例设计
接口测试流程及用例设计 接口测试是整项目测试过程中非常重要的一环,测试的对象是接口,所以可以很早的介入测试,对代码逻辑进行全面验证,更早的发现程序的问题,比UI测试效率更高,并且更容易验证极端和异常的 ...
- 接口测试要点及用例设计
接口测试要点及用例设计 文章目录 接口测试要点及用例设计 一.接口测试 二.接口测试用例设计 提示:以下是本篇文章正文内容,下面案例可供参考 一.接口测试 测试点:功能.异常处理.安全.性能.流程 测 ...
- 接口测试简介及用例设计思路
一.接口测试的简介和分类 接口测试就是测试系统组件接口之间的一种测试 分类: 1.测试外部接口:测试被测系统和外部系统之间的接口(只需要测试正例即可) 2.测试内部接口:①内部接口只提供给内部系统使用 ...
- 自动化测试流程以及用例设计
自动化测试的流程 我们如果想要学习自动化测试流程,就要了解自动化测试的流程,具体流程如下: 需求分析 挑选适合做自动化测试的功能 设计测试用例 搭建自动化测试环境 设计自动化测试项目的架构 编写代码 ...
- 【测试】详解接口测试(2)- HTTP接口用例设计与测试方法(拿B站练手)
文章目录 前言 接口测试是什么 HTTP接口的测试用例设计 接口用例设计小结 HTTP接口的测试方法 手工测试 自动化测试 接口测试策略 结束语 前言 大家好,我是洋子.在之前的文章<详解接口测 ...
- java接口自动化(二) - 接口测试的用例设计
1.简介 在这篇文章里,我们来学习一下接口测试用例设计,主要是来学习一些用例设计要点.其实说白了,接口用例设计和功能用例设计差不多,照猫画虎即可.不要把它想象的多么高大上,多么的难,其实一样,以前怎么 ...
- 软件测试流程及主要用例设计方法
软件测试流程及主要用例设计方法 测试新手人门,首先要掌握测试的流程和实际运作项目流程和基础的用例设计方法. 掌握测试和项目流程是了解研发过程中测试的主要工作:掌握最主要的用例设计方法就是掌握测试岗位最 ...
- 接口自动化【 接口测试的用例设计 】
目录 1.前言 2.接口测试范围 3.自动化接口测试范围 4.自动化接口测试用例设计 5.环境异常测试 6.小结 1.前言 在这篇文章里,我们来学习一下接口测试用例设计,主要是来学习一些用例设计要点. ...
- 【转】Postman系列二:Postman中get接口实战讲解(接口测试介绍,接口测试流程,头域操作)
一:接口测试介绍 接口测试:就是针对软件对外提供服务的接口输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能和接口描述文档的一致性. 接口测试好处:接口测试通常能对系统测试的更为彻底,更高的保障 ...
- 接口报params province error_Python接口测试实践之用例封装及测试报告生成
一.首先,我们想,什么是 API 测试? API 测试其实是一种用程序或工具来发送数据,同时验收系统的返回值的方法.这种测试更偏向于业务实现逻辑.常见的网络协议有 TCP.Http.webservic ...
最新文章
- loadrunner提高篇 - 结果分析实践
- centos7 python3.6升级到3.7_Centos7下把python 2.7升级到python 3.6(升级过程遇到的一些相关问题)...
- 12 信息2班 《基于Android的软件开发》课程成绩
- C/C++中单井号与双井号的使用
- ubuntu 16.04 配置Python2.7 和 Python3.5 同时调用OpenCV
- Linux内核提供了三种不同形式的中断底半部实现机制:软中断、tasklet和工作队列。...
- Scala学习03——基础语法
- python 微信公众号发文章_Python抓取微信公众号全部文章
- FFmpeg 2 - ffplay、ffprobe、ffmpeg 命令使用
- 204页数字化转型:集团企业信息化规划方案
- java中vo_java中的vo是什么
- 数据分析师面试题目_拼多多面经分享:24个「数据分析师」岗位面试题和答案解析...
- 图片太大了怎么改小kb?
- 3D目标检测-二阶段方法(region proposal-based Methods)之基于语义分割的方法(Segmentation based)解读
- 如何查找一篇论文的实现代码从而复现论文?以及如何查找一篇论文被哪些论文引用?
- word如何删除空行和全角空格_word中删除全角空格和空行
- Couldn‘t delete the database.MySQL said: Error dropping database (can‘t rmdir ‘./test‘, errno: 66)
- 小新pro16独显版安装NVIDIA驱动
- Oracle 实验:建立和配置Oracle数据库服务器
- matlab坐标值旋转平移