金融项目实战 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、测试用例(只涉及了必测的)
- 注册图⽚验证码、注册短信验证码
- 注册
- 登录
- 认证开户
- 充值
- 投资
- 投资业务
相关文章:
![](https://i-blog.csdnimg.cn/direct/d4f008c1663f45eaa03cf08646eea154.png)
金融项目实战 02|接口测试分析、设计以及实现
目录 ⼀、接口相关理论 二、接口测试 1、待测接口:投资业务 2、接口测试流程 3、设计用例理论 1️⃣设计方法 2️⃣工具 4、测试点提取 5、测试用例 ⼀、接口相关理论 1、ui功能测试和接⼝测试那个先执⾏?为什么? 结论:…...
![](https://www.ngui.cc/images/no-images.jpg)
二、智能体强化学习——深度强化学习核心算法
2.1 DQN 系列及其改进 2.1.1 背景与动机 在经典强化学习中(如 Q-Learning),如果状态空间或动作空间非常大乃至连续,那么用一个表格来存储 Q ( s , a ) Q(s,a) Q(s,a) 不再可行。为了解决该问题,可以使用神经网络来逼…...
![](https://i-blog.csdnimg.cn/direct/44c84390c1744aa3b95b6ed0d021c006.png)
Mysql--架构篇--存储引擎InnoDB(内存结构,磁盘结构,存储结构,日志管理,锁机制,事务并发控制等)
MySQL是一个多存储引擎的数据库管理系统,支持多种不同的存储引擎。每种存储引擎都有其独特的特性、优势和适用场景。选择合适的存储引擎对于优化数据库性能、确保数据完整性和满足业务需求至关重要。 注:在同一个Mysql的数据库中,对于不同的表…...
![](https://i-blog.csdnimg.cn/img_convert/504053a30e8a27dd5078e3eae616a45e.png)
JVM实战—13.OOM的生产案例
大纲 1.每秒仅上百请求的系统为何会OOM(RPC超时时间设置过长导致QPS翻几倍) 2.Jetty服务器的NIO机制如何导致堆外内存溢出(S区太小 禁NIO的显式GC) 3.一次微服务架构下的RPC调用引发的OOM故障排查实践(MAT案例) 4.一次没有WHERE条件的SQL语句引发的OOM问题排查实践(使用MA…...
![](https://i-blog.csdnimg.cn/direct/8e8c6c852e3a48b4ac6086f2c9a36144.png)
client-go 的 QPS 和 Burst 限速
1. 什么是 QPS 和 Burst ? 在 kubernetes client-go 中,QPS 和 Burst 是用于控制客户端与 Kubernetes API 交互速率的两个关键参数: QPS (Queries Per Second) 定义:表示每秒允许发送的请求数量,即限速器的平滑速率…...
![](https://i-blog.csdnimg.cn/direct/e808d5d798de4ac19437a4f894d7a96d.png)
使用docker-compose安装Redis的主从+哨兵模式
必看 本文是一主二从一哨兵模式;其余的单机/集群/多哨兵模式的话,不在本文... 本文的环境主要是:应用app在本地,redis在云服务器上; 图解 图如下:这个图很重要; 之所以要这样画图࿰…...
![](https://i-blog.csdnimg.cn/direct/fbb7813158ef4899b8c44b63e491d61e.png)
数据结构(Java版)第七期:LinkedList与链表(二)
专栏:数据结构(Java版) 个人主页:手握风云 一、链表的实现(补) 接上一期,下面我们要实现删除所有值为key的元素,这时候有的老铁就会想用我们上一期中讲到的remove方法,循环使用remove方法&#…...
![](https://www.ngui.cc/images/no-images.jpg)
ant-design-vue 1.X 通过id获取a-input组件失败
1.ant-design-vue 1.X 问题描述 当我在a-form组件中,以v-decorator指令绑定表单组件时,无法根据我设置的verify-code-input获取元素 <a-input type"text" id"verify-code-input" class"paIpt":placeholder"$t(…...
![](https://i-blog.csdnimg.cn/direct/fce7135fb8e14cad9dc452cee98290a0.png)
Flutter:吸顶效果
在分页中,实现tab吸顶。 TDNavBar的screenAdaptation: true, 开启屏幕适配。 该属性已自动对不同手机状态栏高度进行适配。我们只需关注如何实现吸顶。 view import package:ducafe_ui_core/ducafe_ui_core.dart; import package:flutter/material.dart; import p…...
![](https://www.ngui.cc/images/no-images.jpg)
MATLAB语言的数据类型
MATLAB语言的数据类型详解 MATLAB(矩阵实验室)是一种广泛应用于科学计算、数据分析、算法开发及模型构建的高性能语言和环境。MATLAB的强大之处不仅在于其丰富的数学工具和可视化功能,还有其灵活多变的数据类型。这篇文章将详细介绍MATLAB中…...
![](https://i-blog.csdnimg.cn/direct/68cef76629564b44b3f54a37210d4ea5.png)
priority_queue优先队列
目录 1. 最短路径算法(Dijkstra算法) 应用场景: 优先队列的作用: 2. 最小生成树算法(Prim算法) 应用场景: 优先队列的作用: 3. 哈夫曼编码(Huffman Coding&#x…...
![](https://www.ngui.cc/images/no-images.jpg)
HarmonyOS 鸿蒙Next 预览pdf文件
HarmonyOS 鸿蒙Next 预览pdf文件 1、使用filePreview 2、使用web组件 在线pdf(网址是直接下载的,不是直接可以预览的),先下载再预览 import media from ohos.multimedia.media;import web_webview from ohos.web.webview;import …...
![](https://i-blog.csdnimg.cn/direct/e21424c34e8e47fda2bd51aa5b50b98d.png)
vscode开启调试模式,结合Delve调试器调试golang项目详细步骤
1.前期准备 (1).在vs code中的扩展程序中搜索并安装Go扩展程序 (2).安装 Delve 调试器 go install github.com/go-delve/delve/cmd/dlvlatest (3).打开vs code的命令面板,输入Go: Install/Update Tools,并单击该命令执行,安装或更新Go语…...
![](https://i-blog.csdnimg.cn/img_convert/925b175c9495a75a1e70d3573e7b508d.png)
身份鉴权(PHP)(小迪网络安全笔记~
免责声明:本文章仅用于交流学习,因文章内容而产生的任何违法&未授权行为,与文章作者无关!!! 附:完整笔记目录~ ps:本人小白,笔记均在个人理解基础上整理,…...
![](https://i-blog.csdnimg.cn/direct/ff49e46d21594a02a21cceaca4fb9c4c.png)
【git】-初始git
一、什么是版本控制? 二、Git的安装 三、掌握Linux常用命令 四、Git基本操作 1、提交代码 2、查看历史提交 3、版本回退 一、什么是版本控制? 版本控制是一种用于记录文件或项目内容变化的系统。它通过版本标识和版本历史记录来管理不同版本&#…...
![](https://i-blog.csdnimg.cn/img_convert/7565617949d54753eaf80a47867995b4.png)
CSS 盒模型
盒模型 CSS盒模型是网页布局的核心概念之一,它描述了网页元素的物理结构和元素内容与周围元素之间的关系。根据W3C规范,每个HTML元素都被视为一个矩形盒子,这个盒子由以下四个部分组成: 内容区(Content areaÿ…...
![](https://i-blog.csdnimg.cn/blog_migrate/80136148c4194ffac36afd146a82e7a1.png)
[0405].第05节:搭建Redis主从架构
Redis学习大纲 一、3主3从的集群配置: 1.1.集群规划 1.分片集群需要的节点数量较多,这里我们搭建一个最小的分片集群,包含3个master节点,每个master包含一个slave节点,结构如下: 2.每组是一主一从&#x…...
![](https://i-blog.csdnimg.cn/direct/c45ea20fc1a04089927927c983f4f843.png)
6 分布式限流框架
限流的作用 在API对外互联网开放的情况下,是无法控制调用方的行为的。当遇到请求激增或者黑客攻击的情况下,会导致接口占用大量的服务器资源,使得接口响应效率的降低或者超时,更或者导致服务器宕机。 限流是指对应用服务进行限制…...
![](https://i-blog.csdnimg.cn/direct/393e7572536740c78fbcc4dc0f524ac2.png)
sosadmin相关命令
sosadmin命令 以下是本人翻译的官方文档,如有不对,还请指出,引用请标明出处。 原本有个对应表可以跳转的,但是CSDN的这个[](#)跳转好像不太一样,必须得用html标签,就懒得改了。 sosadmin help 用法 sosadm…...
![](https://i-blog.csdnimg.cn/direct/f4a7ae796e6e4f4f9f731b30b8fed96f.png)
关于大数据的基础知识(四)——大数据的意义与趋势
成长路上不孤单😊😊😊😊😊😊 【14后😊///计算机爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于大数据的基础知识(四&a…...
![](https://i-blog.csdnimg.cn/direct/db0b39702c0740089717072d13644716.png)
【EI,Scopus检索 | 往届均已检索见刊】第四届智能系统、通信与计算机网络国际学术会议(ISCCN 2025)
重要信息: 大会官网:更多详情【论文投稿】 截稿时间:以官网信息为准 大会时间:2025年2月21-23日 接受/拒稿通知:投稿后3-5个工作日内 收录检索:EI,Scopus 出版信息: 本会议所有…...
![](https://www.ngui.cc/images/no-images.jpg)
smplx blender插件笔记
目录 liunx安装: liunx安装: pip install smplx 这个创建模型报错 SMPL_blender_addon...
![](https://i-blog.csdnimg.cn/direct/2a4dacb754a74d40bb0658f225877fe7.png#pic_center)
【算法】移除元素
今天讲的是力扣题目的题解: 力扣题目: 72.移除元素 题目描述: 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。 假设 nums 中不…...
![](https://www.ngui.cc/images/no-images.jpg)
【后端面试总结】设计一个分布式锁需要考虑哪些东西
分布式锁是我们在分布式场景中经常用到的一种技术,在后端面试中也是出镜率很高,那么我们设计分布式锁的时候应该从那几方面去考虑呢 实现分布式锁需要考虑的点 设置超时时间 设置超时时间的目的是为了避免这个场景:进程A拿了锁,…...
![](https://www.ngui.cc/images/no-images.jpg)
awr报告无法生成:常见案例与解决办法
awr报告无法生成:常见案例与解决办法 STATISTICS_LEVEL设置过低数据库打开状态不对主库隐含参数设置错误MMON子进程被SuspendSYS模式统计信息过期WRH$_SQL_PLAN表数据量太大AWR绑定变量信息收集超时撞上数据库Bug 9040676STATISTICS_LEVEL设置过低 STATISTICS_LEVEL设置为BAS…...
![](https://www.ngui.cc/images/no-images.jpg)
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 轻型目录访问协议(英文:Lightweight Director…...
![](https://www.ngui.cc/images/no-images.jpg)
【文件I/O】文件持久化
这篇文章详细讲解的是 理解在Linux操作系统中输入/输出(I/O)编程与文件操作的关系。 在计算机编程中,输入/输出编程(I/O 编程) 是一个重要的概念,指的是通过程序与外部世界(如用户输入、文件、…...
![](https://i-blog.csdnimg.cn/direct/d11547e6ff0946ad9b7d2b891a28d06a.png)
USB学习——基本概念
文章目录 USB(Universal Serial Bus)概述USB系统的描述USB总线传输方式USB的拓扑结构 USB的连接模型USB控制器及分类USB描述符USB 端点USB枚举过程USB 四种传输类型USB 事务批量传输(Bulk)中断传输(Interrupt)等时传输(Isochronous)控制传输(Control)端点…...
![](https://i-blog.csdnimg.cn/direct/06a111f36a0d4a8a85d9df2b1ca3860e.png)
python-leetcode-三数之和
15. 三数之和 - 力扣(LeetCode) class Solution:def threeSum(self, nums: List[int]) -> List[List[int]]:nums.sort() # 排序n len(nums)res []for i in range(n):# 剪枝:如果当前数 > 0,三数之和不可能为 0if nums[i]…...
![](https://www.ngui.cc/images/no-images.jpg)
springboot整合拦截器
1.首先创建拦截器类: 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…...
![](/images/no-images.jpg)
wordpress $show_date/友情链接交易购买
最近在做一个项目,其中用到了TabActivity,想截取OnKeyDown事件来提示用户退出程序在api lever 5以上有OnBackPressed重载函数,可以达到同样的效果。 但是我一直没有成功,调试程序发现,因为TabActivity压根没有获取我按…...
![](/images/no-images.jpg)
上海的网站公安备案查询系统/东莞seo公司
from pathlib import Path FILE Path(__file__).absolute() sys.path.append(FILE.parents[0].as_posix())...
![](/images/no-images.jpg)
郑州门户网站建设哪家好/深圳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…...
![](/images/no-images.jpg)
网站的产品中心怎么做/西安网站建设排名
[rootqs-xezf-db2 ~]# su - oracle -bash: ulimit: open files: cannot modify limit: 不允许的操作 [oracleqs-xezf-db2 ~]$ linux对用户有默认的ulimit限制,/etc/sysconfig/limits.conf 文件可以配置用户的硬配置和软配置,硬配置是个上限。当超出上限…...
![](/images/no-images.jpg)
网站要多钱/百度网站的网址
zip:压缩:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b][-ll][-n][-t][-][压缩文件][文件...][-i][-x]解压:unzip[选项] 压缩文件名.zip选项:-x 文件列表解压缩文件,但不包括指定的file文件。-v 查看压缩文件目录,但不解压。…...
在线定制logo/持续优化疫情防控举措
地址 单播地址(unicast address)最大32767(0x7FFF),有Provisioner在配对的时候分配 虚拟地址(virtual address)代表一系列目标地址,16bit的值, 范围0x8000~0xBFFF 虚拟地址的意思: Label UUID是128bit的,一个或多个elements可以订…...