接口测试的标准和规范性

2023-10-30

一、接口测试测试点

1、要考虑接口的正常调用

1)按照接口定义,传递正确的接口信息,包括地址、方法、传输数据,然后查看接口返回的响应结果是否正确,数据库的数据是否正确。

2)传递的请求数据需要覆盖有效类、边界值。

3)返回的响应结果的每个字段都需要检查,如code、msg信息。

4)调用接口对数据库的中的数据进行测试,增删改业务接口调用需要确保到数据库种表字段的正确性验证。

2、考虑请求参数的正常和异常情况

1)请求数据输入异常值,例如空值、长度类型异常、数据类型异常等,接口能否正确处理且返回响应结果是否合理。

2)考虑业务的约束。例如订单状态必须确认收货后才能评价,调用非该状态的订单,进行评价。

3)输入错误的参数名、多一个参数、少一个参数,接口能否正确处理且返回响应结果是否合理。

4)错误传输数据格式(如json格式写成form表单格式)测试

3、关注接口的安全性测试

1)敏感数据,例如密码是否加密传输。

2)返回数据是否含有敏感信息,如用户名、密码、身份证信息,完整的用户银行账号信息等。

3)接口是否对传入的数据做安全校验,如用户鉴权token校验。

4)接口是否防止恶意请求,例如大量伪造请求接口致使服务器崩溃。

4、关注接口的性能测试

1)接口的响应时间在用户可接受的范围内。

2)并发请求相同的接口,查看接口的处理情况,例如插入了相同的数据导致数据出错,引发系统故障。

3)对于业务操作频繁的接口需要做压测的,监控性能资源,确定最大的瓶颈是否满足当前业务需要。

二、接口用例设计的思路和方法

1、考虑正常流程,输入正确的参数,返回合理的结果。

2、考虑异常流程,输入错误的参数(空、多传参数、少传参数、数据长度、数据类型、必填项验证、参数名错误等等),是否返回合理的结果。

3、考虑接口的业务逻辑,必须要执行回款计划之后,这个标的状态才会修改为汇款中(考虑业务逻辑的先后关系)。

4、考虑接口的安全认证,注册接口的当中的用户信息需要加密,而登录接口的话需要做到实名认证,才能进行投资。

5、注意用例的内容,如用例id,用例标题、请求地址、请求方法、请求参数、预期结果、实际结果

三、保证接口测试覆盖率

1、检查黑盒测试场景是否存在遗漏,注意规范用例设计的方法和流程

2、覆盖接口中的特殊分支,异常场景、项目配置等相关场景

3、针对删除接口,如果需要批量删除的时候,会选择在低峰期,通过定时任务来实现

4、保证接口测试覆盖率可能会遇见的问题,,可能开发人员提供的接口文档不规范、设计的用例无法实施测试、、测试人员理解困难等

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

接口测试的标准和规范性 的相关文章

  • 查看哪个进程占用了8005端口,并杀死占用端口的进程。

    查看哪个进程占用了8005端口 netstat ano findstr 8005 返回进程号 通过进程号杀死占用端口的进程 taskkill PID 19288 F 杀死该进程 F是强制删除
  • C++—返回值优化

    返回值优化 Return value optimization 缩写为RVO 是C 的一项编译优化技术 即删除保持函数返回值的临时对象 这可能会省略两次复制构造函数 当一个函数返回一个对象实例 一个临时对象将被创建并通过复制构造函数把目标对
  • 这些Android面试题,成就你高薪就业。

    前言 这些题目都是面试必答题 看看你还有哪些是没有掌握到的 1 说下你所知道的设计模式与使用场景 建造者模式 观察者模式 代理模式 门面模式 单例模式 生产者消费者模式 2 Java语言的特点与OOP思想 这个通过对比来描述 比如面向对象和
  • Leetcode 95. 不同的二叉搜索树 II

    文章目录 题目 代码 9 21 首刷看解析 题目 Leetcode 95 不同的二叉搜索树 II 代码 9 21 首刷看解析 class Solution public vector
  • vue实现动态路由--后台返回路由表(并解决页面刷新,路由找不到的问题)

    先大致说一下自己的思路 其实后台返回的权限表跟我们前端自己配置的路由格式是差不多的 格式可以跟后台沟通 我们需要做的是根据后台返回的路由 然后进行遍历 生成一个本地的路由表 然后利用Router addRouters 这个方法 把我们新生成

随机推荐

  • Jmeter-Android手机端脚本录制

    温馨提示 电脑和手机在同一网络段上 1 打开Jmeter工具 新建一个HTTP代理服务器 2 然后再新建一个线程组 3 在线程组中添加录制控制器 4 打开模拟器 设置 WiFi 长按 修改网络
  • 辅助模块加速收敛,精度大幅提升 移动端实时的NanoDet-Plus来了

    Nanodet目标检测模型完成自动捡球机器人 从零开始 带你用Nanodet目标检测模型完成自动捡球机器人 古月居 开源地址 https github com Coolog Nanodet Robot PathPlanning 作者提出 N
  • 技术分享|SQL和 NoSQL数据库之间的差异:MySQL(VS)MongoDB

    技术分享 SQL和 NoSQL数据库之间的差异 什么是SQL和NoSQL 一 什么是SQL 二 什么是NoSQL SQL VS NoSQL 针对SQL和NoSQL的区别 将基于不同的方面进行比较 MySQL VS MongoDB 在当今市场
  • forEach()退出循环的方法

    在for循环中退出循环有3种方式 return 终止 break 退出整个循环 continue 退出当次循环 forEach 只能识别上面三种退出循环中的return 其它都识别不了 且return在forEach 中相当于continu
  • ThreadLocal失效

    在JDK中 解决线程冲突问题 有两种解决方案 l 给临界区加锁 l 本地化临界区 第一种解决方案的典型代表是Synchonized 第二种的典型代表是ThreadLocal 而CopyOnWrite是这两种方案的融合 ThreadLocal
  • Arduino通过L298N红板控制板控制直流电机

    在Arduino论坛上看到很多人都做过智能小车 有两轮的 有四轮的 功能也是多种多样 有寻迹 壁障 无线遥控 红外遥控的 其实小车就是个底盘或者载体 然后可以根据需要向小车上加功能模块 于是我在淘宝上买了一个四轮小车的架子 里面包括四个轮子
  • python解包的概念_如何以编程方式为解包结构?

    我试图用Python读取和解析一个二进制文件 在 问题是文件中的数据可以是little endian或big endian格式 也可以是32位或64位的值 在文件头中有几个字节指定数据格式和大小 假设我已经读过这些 并且知道格式和大小 然后
  • SWM32系列教程7-I2C及其应用

    SWM32S单片机有2个I2C外设 其特点如下 支持最高1MHZ速率主机模式 支持最高400KHZ速率从机模式 支持7位或10位地址 波特率可配置 支持中断功能 今天就以驱动电容触摸芯片GT911为例 介绍一下I2C模块的使用 配置I2C之
  • 前端实现打印功能

    目录 方法一 window print 方法二 利用iframe iframe contentWindow print 方法三 使用第三方库或插件 提供一个完整的范例 1 设计打印布局 2 创建打印版本 3 使用JavaScript控制打印
  • C++核心编程 之类和对象(二)

    目录 1 2 对象的初始化和清理 1 2 1 构造函数和析构函数 构造函数语法 析构函数语法 1 2 2 构造函数的分类和调用 1 2 3 拷贝构造函数调用时机 1 2 4 构造函数调用规则 1 2 5 深拷贝与浅拷贝 1 2 6 初始化列
  • 1-Linux_虚拟机VMware 15安装教程

    虚拟机VMware 15安装教程 https www onlinedown net soft 2062 htm 1 由上面的网址下载VMware 15后双击运行安装程序点击下一步 进行安装 2 在最终用户许可协议界面选中 我接受许可协议中的
  • 为什么要用TSubClassOf

    2019独角兽企业重金招聘Python工程师标准 gt gt gt TSubclassOf 是提供 UClass 类型安全性的模板类 例如您在创建一个投射物类 允许设计者指定伤害类型 您可只创建一个 UClass 类型的 UPROPERTY
  • vsocde vue snippet 设置

    vue snippt 设置 建议下在一个 vetur extensions 1 首先打开 vue json 文件 ctrl p 搜索 vue json 文件 enter File gt preferences gt User sneppts
  • MSBuild入门

    MSBuild是什么 MSBuild全称 Microsoft Build Engine 是用于构建应用程序的平台 您可能不知道它 但是如果您在使用VS做开发 那么一定时时刻刻在使用它 因为是它在背后为你管理生成你的项目文件 当新建一个项目时
  • ARM汇编指令集·带例题

    目录 32位ARM汇编指令集 32位数据操作指令 32位存储器数据传送指令 32位转移指令 其它32位指令 指令具体用法 数据处理指令 MOV指令 ADD指令 SUB指令 MUL指令 CMP指令 ORR逻辑或 BIC指令 转移指令 B指令
  • Maven进阶-配置私服(Nexus 的使用)

    Maven进阶 配置私服 Nexus 的使用 引言 一 Nexus 的下载 二 Nexus 启动服务器 三 首次配置 Nexus 四 新建仓库 五 设置仓库组 六 仓库的 URL 七 Maven 的配置 1 配置 mirror 2 配置 s
  • mysql select into 新表_SELECT INTO 语句数据表全表复制备份

    select into 语句数据表全表复制备份 select into 语句常用于创建表的备份复件或者用于对记录进行存档 sql select into 语法 您可以把所有的列插入新表 select into new table name
  • C++replace_all strip函数

    replace all occurance of t in s to w void replace all std string s std string const t std string const w string size typ
  • python语言需要注意的几点

    keyword kwlist可以打印出python所有关键字 import keyword print keyword kwlist 不需要使用大括号 但必须对齐 if True print Answer print True else p
  • 接口测试的标准和规范性

    一 接口测试测试点 1 要考虑接口的正常调用 1 按照接口定义 传递正确的接口信息 包括地址 方法 传输数据 然后查看接口返回的响应结果是否正确 数据库的数据是否正确 2 传递的请求数据需要覆盖有效类 边界值 3 返回的响应结果的每个字段都