当前位置: 首页 > news >正文

金融项目实战 02|接口测试分析、设计以及实现

目录

⼀、接口相关理论

二、接口测试

1、待测接口:投资业务

2、接口测试流程

3、设计用例理论

1️⃣设计方法

2️⃣工具

4、测试点提取

5、测试用例


⼀、接口相关理论

1、ui功能测试和接⼝测试那个先执⾏?为什么?

  • 结论:接⼝测试先执⾏
  • 原因:ui功能测试需要等待前端⻚⾯开发完成、后台接⼝开发完后且前端与后端联调完成。

2、ui功能测试与接⼝测试的区别? 

  • ui功能:(前端js、服务器端的)功能调⽤+页⾯布局+兼容
  • 接⼝测试:完整的测试服务端的功能验证 

3、ui功能测试和接⼝测试那个更⾼效?为什么?

  • 结论:接⼝测试更⾼
  • 原因:接⼝测试只测服务端功能以及没有多⻚⾯操作因素。

二、接口测试

1、待测接口:投资业务

2、接口测试流程

  • 需求评审
    • 参与⼈员:开发、测试、产品
    • ⽬的:
      • 1、熟悉项⽬有哪些功能
      • 2、站在不同⻆度对需求进⾏查漏补缺
      • 3、各⻆⾊对需求理解⼀致
  • 测试计划与⽅案
    • 核⼼: 测什么、谁来测、怎么测
    • 其他: 提测标准、上线标准、⻛险控制
  • 分析API⽂档
    • 1、测试接⼝依赖的数据是否都明确(请求、响应)
    • 2、分析接⼝之间依赖关系及关联
    • 3、参数规则(类型、必填、⻓度等等)说明
  • 编写⽤例
  • 搭建环境(项⽬环境、测试⼯具环境)
  • 编写脚本
  • 执⾏脚本
  • 缺陷管理
  • 测试报告

项⽬难点:

         1、认证接⼝请求头使⽤multipart/form-data

         2、三⽅开户、三⽅充值、三⽅投资都需要调⽤Mock接⼝

                请求url:来源响应数据action的值

                请求参数和值:所有input标签中name属性值为参数名,value属性值为参数值。

3、设计用例理论

先对单接口进行测试,再将多个单接口整体拼接为业务场景进行测试,接口若无法对应实际业务场景,则测试无意义

优先级:P0 > P1 >P2 >P3,通常时间不充裕的情况下可以不测 P3 优先级的测试点

1️⃣设计方法

2️⃣工具
  • 可视化⼯具:postman、jmeter
  • 代码:python+requests+unittest

4、测试点提取

  • 注册图⽚验证码、注册短信验证码

  •  注册

  • 登录

  • 开户认证

  • 充值

  • 投资

5、测试用例(只涉及了必测的)

  • 注册图⽚验证码、注册短信验证码

  • 注册

  • 登录

  • 认证开户

  • 充值

  • 投资

  • 投资业务

相关文章:

金融项目实战 02|接口测试分析、设计以及实现

目录 ⼀、接口相关理论 二、接口测试 1、待测接口:投资业务 2、接口测试流程 3、设计用例理论 1️⃣设计方法 2️⃣工具 4、测试点提取 5、测试用例 ⼀、接口相关理论 1、ui功能测试和接⼝测试那个先执⾏?为什么? 结论&#xff1a…...

二、智能体强化学习——深度强化学习核心算法

2.1 DQN 系列及其改进 2.1.1 背景与动机 在经典强化学习中(如 Q-Learning),如果状态空间或动作空间非常大乃至连续,那么用一个表格来存储 Q ( s , a ) Q(s,a) Q(s,a) 不再可行。为了解决该问题,可以使用神经网络来逼…...

Mysql--架构篇--存储引擎InnoDB(内存结构,磁盘结构,存储结构,日志管理,锁机制,事务并发控制等)

MySQL是一个多存储引擎的数据库管理系统,支持多种不同的存储引擎。每种存储引擎都有其独特的特性、优势和适用场景。选择合适的存储引擎对于优化数据库性能、确保数据完整性和满足业务需求至关重要。 注:在同一个Mysql的数据库中,对于不同的表…...

JVM实战—13.OOM的生产案例

大纲 1.每秒仅上百请求的系统为何会OOM(RPC超时时间设置过长导致QPS翻几倍) 2.Jetty服务器的NIO机制如何导致堆外内存溢出(S区太小 禁NIO的显式GC) 3.一次微服务架构下的RPC调用引发的OOM故障排查实践(MAT案例) 4.一次没有WHERE条件的SQL语句引发的OOM问题排查实践(使用MA…...

client-go 的 QPS 和 Burst 限速

1. 什么是 QPS 和 Burst ? 在 kubernetes client-go 中,QPS 和 Burst 是用于控制客户端与 Kubernetes API 交互速率的两个关键参数: QPS (Queries Per Second) 定义:表示每秒允许发送的请求数量,即限速器的平滑速率…...

使用docker-compose安装Redis的主从+哨兵模式

必看 本文是一主二从一哨兵模式;其余的单机/集群/多哨兵模式的话,不在本文... 本文的环境主要是:应用app在本地,redis在云服务器上; 图解 图如下:这个图很重要; 之所以要这样画图&#xff0…...

数据结构(Java版)第七期:LinkedList与链表(二)

专栏:数据结构(Java版) 个人主页:手握风云 一、链表的实现(补) 接上一期,下面我们要实现删除所有值为key的元素,这时候有的老铁就会想用我们上一期中讲到的remove方法,循环使用remove方法&#…...

ant-design-vue 1.X 通过id获取a-input组件失败

1.ant-design-vue 1.X 问题描述 当我在a-form组件中&#xff0c;以v-decorator指令绑定表单组件时&#xff0c;无法根据我设置的verify-code-input获取元素 <a-input type"text" id"verify-code-input" class"paIpt":placeholder"$t(…...

Flutter:吸顶效果

在分页中&#xff0c;实现tab吸顶。 TDNavBar的screenAdaptation: true, 开启屏幕适配。 该属性已自动对不同手机状态栏高度进行适配。我们只需关注如何实现吸顶。 view import package:ducafe_ui_core/ducafe_ui_core.dart; import package:flutter/material.dart; import p…...

MATLAB语言的数据类型

MATLAB语言的数据类型详解 MATLAB&#xff08;矩阵实验室&#xff09;是一种广泛应用于科学计算、数据分析、算法开发及模型构建的高性能语言和环境。MATLAB的强大之处不仅在于其丰富的数学工具和可视化功能&#xff0c;还有其灵活多变的数据类型。这篇文章将详细介绍MATLAB中…...

priority_queue优先队列

目录 1. 最短路径算法&#xff08;Dijkstra算法&#xff09; 应用场景&#xff1a; 优先队列的作用&#xff1a; 2. 最小生成树算法&#xff08;Prim算法&#xff09; 应用场景&#xff1a; 优先队列的作用&#xff1a; 3. 哈夫曼编码&#xff08;Huffman Coding&#x…...

HarmonyOS 鸿蒙Next 预览pdf文件

HarmonyOS 鸿蒙Next 预览pdf文件 1、使用filePreview 2、使用web组件 在线pdf&#xff08;网址是直接下载的&#xff0c;不是直接可以预览的&#xff09;&#xff0c;先下载再预览 import media from ohos.multimedia.media;import web_webview from ohos.web.webview;import …...

vscode开启调试模式,结合Delve调试器调试golang项目详细步骤

1.前期准备 (1).在vs code中的扩展程序中搜索并安装Go扩展程序 (2).安装 Delve 调试器 go install github.com/go-delve/delve/cmd/dlvlatest (3).打开vs code的命令面板&#xff0c;输入Go: Install/Update Tools&#xff0c;并单击该命令执行&#xff0c;安装或更新Go语…...

身份鉴权(PHP)(小迪网络安全笔记~

免责声明&#xff1a;本文章仅用于交流学习&#xff0c;因文章内容而产生的任何违法&未授权行为&#xff0c;与文章作者无关&#xff01;&#xff01;&#xff01; 附&#xff1a;完整笔记目录~ ps&#xff1a;本人小白&#xff0c;笔记均在个人理解基础上整理&#xff0c;…...

【git】-初始git

一、什么是版本控制&#xff1f; 二、Git的安装 三、掌握Linux常用命令 四、Git基本操作 1、提交代码 2、查看历史提交 3、版本回退 一、什么是版本控制&#xff1f; 版本控制是一种用于记录文件或项目内容变化的系统。它通过版本标识和版本历史记录来管理不同版本&#…...

CSS 盒模型

盒模型 CSS盒模型是网页布局的核心概念之一&#xff0c;它描述了网页元素的物理结构和元素内容与周围元素之间的关系。根据W3C规范&#xff0c;每个HTML元素都被视为一个矩形盒子&#xff0c;这个盒子由以下四个部分组成&#xff1a; 内容区&#xff08;Content area&#xff…...

[0405].第05节:搭建Redis主从架构

Redis学习大纲 一、3主3从的集群配置&#xff1a; 1.1.集群规划 1.分片集群需要的节点数量较多&#xff0c;这里我们搭建一个最小的分片集群&#xff0c;包含3个master节点&#xff0c;每个master包含一个slave节点&#xff0c;结构如下&#xff1a; 2.每组是一主一从&#x…...

6 分布式限流框架

限流的作用 在API对外互联网开放的情况下&#xff0c;是无法控制调用方的行为的。当遇到请求激增或者黑客攻击的情况下&#xff0c;会导致接口占用大量的服务器资源&#xff0c;使得接口响应效率的降低或者超时&#xff0c;更或者导致服务器宕机。 限流是指对应用服务进行限制…...

sosadmin相关命令

sosadmin命令 以下是本人翻译的官方文档&#xff0c;如有不对&#xff0c;还请指出&#xff0c;引用请标明出处。 原本有个对应表可以跳转的&#xff0c;但是CSDN的这个[](#)跳转好像不太一样&#xff0c;必须得用html标签&#xff0c;就懒得改了。 sosadmin help 用法 sosadm…...

关于大数据的基础知识(四)——大数据的意义与趋势

成长路上不孤单&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a; 【14后&#x1f60a;///计算机爱好者&#x1f60a;///持续分享所学&#x1f60a;///如有需要欢迎收藏转发///&#x1f60a;】 今日分享关于大数据的基础知识&#xff08;四&a…...

【EI,Scopus检索 | 往届均已检索见刊】第四届智能系统、通信与计算机网络国际学术会议(ISCCN 2025)

重要信息&#xff1a; 大会官网&#xff1a;更多详情【论文投稿】 截稿时间&#xff1a;以官网信息为准 大会时间&#xff1a;2025年2月21-23日 接受/拒稿通知&#xff1a;投稿后3-5个工作日内 收录检索&#xff1a;EI&#xff0c;Scopus 出版信息&#xff1a; 本会议所有…...

smplx blender插件笔记

目录 liunx安装&#xff1a; liunx安装&#xff1a; pip install smplx 这个创建模型报错 SMPL_blender_addon...

【算法】移除元素

今天讲的是力扣题目的题解&#xff1a; 力扣题目&#xff1a; 72.移除元素 题目描述&#xff1a; 给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。 假设 nums 中不…...

【后端面试总结】设计一个分布式锁需要考虑哪些东西

分布式锁是我们在分布式场景中经常用到的一种技术&#xff0c;在后端面试中也是出镜率很高&#xff0c;那么我们设计分布式锁的时候应该从那几方面去考虑呢 实现分布式锁需要考虑的点 设置超时时间 设置超时时间的目的是为了避免这个场景&#xff1a;进程A拿了锁&#xff0c…...

awr报告无法生成:常见案例与解决办法

awr报告无法生成:常见案例与解决办法 STATISTICS_LEVEL设置过低数据库打开状态不对主库隐含参数设置错误MMON子进程被SuspendSYS模式统计信息过期WRH$_SQL_PLAN表数据量太大AWR绑定变量信息收集超时撞上数据库Bug 9040676STATISTICS_LEVEL设置过低 STATISTICS_LEVEL设置为BAS…...

Hadoop 生态之 kerberos

参考链接 https://winway.github.io/2022/04/02/kerberos-ranger/ https://ieevee.com/tech/2016/06/22/ranger-2.html kerberos解决”who are you“的问题 ranger解决”what you can do“的问题 LDAP 轻型目录访问协议&#xff08;英文&#xff1a;Lightweight Director…...

【文件I/O】文件持久化

这篇文章详细讲解的是 理解在Linux操作系统中输入/输出&#xff08;I/O&#xff09;编程与文件操作的关系。 在计算机编程中&#xff0c;输入/输出编程&#xff08;I/O 编程&#xff09; 是一个重要的概念&#xff0c;指的是通过程序与外部世界&#xff08;如用户输入、文件、…...

USB学习——基本概念

文章目录 USB&#xff08;Universal Serial Bus&#xff09;概述USB系统的描述USB总线传输方式USB的拓扑结构 USB的连接模型USB控制器及分类USB描述符USB 端点USB枚举过程USB 四种传输类型USB 事务批量传输(Bulk)中断传输(Interrupt)等时传输(Isochronous)控制传输(Control)端点…...

python-leetcode-三数之和

15. 三数之和 - 力扣&#xff08;LeetCode&#xff09; class Solution:def threeSum(self, nums: List[int]) -> List[List[int]]:nums.sort() # 排序n len(nums)res []for i in range(n):# 剪枝&#xff1a;如果当前数 > 0&#xff0c;三数之和不可能为 0if nums[i]…...

springboot整合拦截器

1.首先创建拦截器类&#xff1a; package com.example.interceptor;import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.sp…...

wordpress $show_date/友情链接交易购买

最近在做一个项目&#xff0c;其中用到了TabActivity&#xff0c;想截取OnKeyDown事件来提示用户退出程序在api lever 5以上有OnBackPressed重载函数&#xff0c;可以达到同样的效果。 但是我一直没有成功&#xff0c;调试程序发现&#xff0c;因为TabActivity压根没有获取我按…...

上海的网站公安备案查询系统/东莞seo公司

from pathlib import Path FILE Path(__file__).absolute() sys.path.append(FILE.parents[0].as_posix())...

郑州门户网站建设哪家好/深圳seo优化排名公司

139. 单词拆分 class Solution {public boolean wordBreak(String s, List<String> wordDict) {//dp[i]表示长度为i的字符串是否包含在字典中boolean[] dp new boolean[s.length()1];//别忘记初始化dp[0] true;for(int i0;i<s.length()1;i){for(int j0;j<i;j){i…...

网站的产品中心怎么做/西安网站建设排名

[rootqs-xezf-db2 ~]# su - oracle -bash: ulimit: open files: cannot modify limit: 不允许的操作 [oracleqs-xezf-db2 ~]$ linux对用户有默认的ulimit限制&#xff0c;/etc/sysconfig/limits.conf 文件可以配置用户的硬配置和软配置&#xff0c;硬配置是个上限。当超出上限…...

网站要多钱/百度网站的网址

zip:压缩&#xff1a;zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b][-ll][-n][-t][-][压缩文件][文件...][-i][-x]解压&#xff1a;unzip[选项] 压缩文件名.zip选项&#xff1a;-x 文件列表解压缩文件&#xff0c;但不包括指定的file文件。-v 查看压缩文件目录&#xff0c;但不解压。…...

在线定制logo/持续优化疫情防控举措

地址 单播地址(unicast address)最大32767(0x7FFF)&#xff0c;有Provisioner在配对的时候分配 虚拟地址(virtual address)代表一系列目标地址&#xff0c;16bit的值, 范围0x8000~0xBFFF 虚拟地址的意思&#xff1a; Label UUID是128bit的&#xff0c;一个或多个elements可以订…...