day:16 银行项目转帐

news/2025/3/13 3:54:10/文章来源:https://www.cnblogs.com/junting/p/18765926


一、手机转账

我主要负责了转账模块,这个大模块中包含了智能转账、手机转账、语音转账、预约转账、收款人管理等5个子模块,我这次着重介绍一下我们生活中使用最多的手机转账子模块。

对于转账需要关注的是转账前、转账中、转账后这三个状态下的测试。一个完整的业务流程就是用户在转账录入页输入转账信息,包括选择付款账户,收款人姓名,收款人账号,收款银行,转账金额,转账方式等,输入完毕后点击下一步进入确认页,确认页会显示用户在录入页输入的所有信息,确认无误后点击确认,会根据转账金额提供不同的验证方式,一般来说手机动态码验证即可。但是本银行采取的是卡密、短信、人脸识别三重验证,验证成功点击确认提交之后,就会跳转到结果页,提示用户转账已受理,基本上就是这么一个流程。

后端逻辑的话首先我发起一笔转账,我要去后端调取我这张付款卡的状态(正常,挂失,冻结,注销),是否可以正常支付(正常和挂失状态的卡可以转账,冻结和注销状态不可),确认可以正常支付的话就要去调查卡里有没有钱,如果余额不足,转账金额大于余额的话肯定也无法转账成功,然后这两种情况都是在录入页就会报错的,然后确认转出的卡状态正常余额充足之后,就要去确认转入卡的状态,如果转入卡状态不正常的话,行内转账的话是在录入页就进行报错的,跨行实时转账是在结果页报错,跨行延时转账则是在到时间后通过转账失败的通知告知用户对方账号状态异常。

然后转账的状态我们也要测试一下,比如说延时转账设置的两小时后转账,那这两个小时内这笔转账应该都在转账中状态,两小时后准时转换为转账成功或转账失败。

转账前后我们都要用数据库去查看一下卡余额,转账前的余额是多少,转账后的是多少。账户表、渠道表、用户信息表、流水表、交易记录表、交易撤销表、对账文件表等等。

二、智能转账

我主要负责了转账模块,这个大模块中包含了智能转账、手机转账、语音转账、预约转账、收款人管理等5个子模块,我这次着重介绍一下智能转账子模块。

对于转账需要关注的是转账前、转账中、转账后这三个状态下的测试。一个完整的业务流程就是用户在转账录入页输入转账信息,包括选择付款账户,收款人姓名,收款人账号,收款银行,转账金额,转账方式等,输入完毕后点击下一步进入确认页,确认页会显示用户在录入页输入的所有信息,确认无误后点击确认,会根据转账金额提供不同的验证方式,一般来说手机动态码验证即可。但是本银行采取的是卡密、短信、人脸识别三重验证,验证成功点击确认提交之后,就会跳转到结果页,提示用户转账已受理,基本上就是这么一个流程。

后端逻辑的话首先我发起一笔转账,我要去后端调取我这张付款卡的状态(正常,挂失,冻结,注销),是否可以正常支付(正常和挂失状态的卡可以转账,冻结和注销状态不可),确认可以正常支付的话就要去调查卡里有没有钱,如果余额不足,转账金额大于余额的话肯定也无法转账成功,然后这两种情况都是在录入页就会报错的,然后确认转出的卡状态正常余额充足之后,就要去确认转入卡的状态,如果转入卡状态不正常的话,行内转账的话是在录入页就进行报错的,跨行实时转账是在结果页报错,跨行延时转账则是在到时间后通过转账失败的通知告知用户对方账号状态异常。

然后转账的状态我们也要测试一下,比如说延时转账设置的两小时后转账,那这两个小时内这笔转账应该都在转账中状态,两小时后准时转换为转账成功或转账失败。

转账前后我们都要用数据库去查看一下卡余额,转账前的余额是多少,转账后的是多少。账户表、渠道表、用户信息表、流水表、交易记录表、交易撤销表、对账文件表等等。

三、测试点

行内外转账:

1.行内:

借记卡(珠峰IC借记卡普卡、珠峰IC借记卡金卡、社会保障卡、惠农一卡通、藏建一卡通)、活期存折、基本户、一般户、临时户、专用户都转账成功,定期存折、存单则转账失败

2.行外:

节假日转账:

(0,100万]:银联贷记(卡bin表的他行卡)、小额、超网(超网行号表的他行卡)

(100万,500万]:银联贷记(卡bin表的他行卡)

非节假日转账:

(0,20万]、超网、小额

(20万,100万]银联贷记(卡bin表的他行卡)、超网(超网行号表的他行卡)、小额

(100万,500万]银联贷记(卡bin表的他行卡)、大额

(500万,+∞]大额

这里主要都是测试各个支付汇路通道转账的限额,涉及到开区间和闭区间的边界值测试。

转本人账户以及他人账户:

本人:

1.有证书,本次转账金额加累计转账金额超过100万,验证取款密码,转账成功

2.有特殊限额,本次转账金额加累计转账金额超过特殊限额,验证取款密码,转账成功

3.无证书,单笔转账金额超过50万,验证取款密码,转账成功

4.本次转账金额加累计转账金额超过非柜面日累计限额,验证取款密码,转账成功

5.本次转账加累计转账次数超过非柜面当日累计笔数限额,验证取款密码,转账成功

6.本次转账金额加累计转账金额超过非柜面年累计限额,验证取款密码,转账成功

7.本人账户转本人本行账户,转账失败

他人:

1.验证转账金额与安全认证(转他人账户):单笔、当日累计限额

2.验证日累计特殊限额(转他人账户):单笔、当日累计、特殊限额

3.验证非柜面转账限额(转他人账户):日累计、当日笔数累计、年累计、特殊限额

二三类户转账

这里主要测试二类户和三类户的转入、转出以及绑定账户转账以及非绑定账户转账的限额测试。

账户状态规则

主要根据收款账户、付款账户的账户状态进行测试,对呈现结果中的转账成功和失败进行测试。

状态异常情况测试

1.付款方子账户状态全额冻结-只进不出,转账失败

2.付款方止付状态全额止付-只进不出,转账失败

3.付款方渠道限制生效,转账失败

3.付款方强制备注生效,转账失败

4.付款方子账户状态部分冻结-可进,转账成功

5.付款方止付状态部分止付-可进,转账成功

四、有意义的bug

bug1

其实转账模块没有什么太典型的bug,基本上问题会出现在限额的边界值上以及转账之后不能到账或者到账金额不正确,又或者是需求规定转账失败的情况却做成了转账成功。这些都是需要开发应该加判断或者限制的部分没有做正确,修复代码之后基本都能解决。

bug2

A账户余额100元,然后开两个窗口(app和web同时进行,因为银行网站的web端也是可以转账的)同时给两个不同的账户转账100元,最后都转账成功了。(意思就是余额只有100,同时转账的时候,却转了200出去)

经过排查,这个是开发在进行多线程处理的时候比较容易出问题的地方。这里应该对转账动作有先后限制,第一时间触达转账的账号转账成功,扣款。第二账户触达转账的时候就应该提示余额不足。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

day:银行项目——理财业务

一、理财业务术语二、理财业务的分类三、购买流程理财客户签约风险评估理财产品的预约理财产品查询理财产品讲解 1、我最近做了一个银行项目,然后做了当时测试了当中的理财模块,我这边大概和您讲解一下 2、首先理财中有包括签约,风评,理财购买,赎回/撤销,以及理财查询,之…

空间遥感智能处理技术发展现状与趋势

在数字化时代,空间遥感技术已经成为获取地球表面信息的重要手段。随着卫星遥感技术的快速发展,获取的遥感数据量激增,这对遥感数据的智能处理提出了更高的要求。本文将探讨空间遥感智能处理技术的发展现状与未来趋势。 发展现状大数据与人工智能的融合:当前,遥感数据处理正…

day:16 银行项目讲解

一、熟悉银行业务 (1)核心业务:负债业务,公共业务,信贷业务,支付业务,核算业务,理财业务 手机银行 票据业务 企业网银业务 对公业务 柜台业务 (2)银行系统 核心系统(账务系统) 资管系统 客户端系统 服务端系统 数据计算平台 短信平台 语音系统 二、信贷业务 (1)e…

多智能体粒子环境(Multi-Agent Particle Env)食用指南--从入门到入土

0.项目地址:原地址:openai/multiagent-particle-envs: Code for a multi-agent particle environment used in the paper "Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments" (github.com) 国内镜像:项目首页 - multiagent-particle-env…

Windows 提权-内核利用_1

本文通过 Google 翻译 Kernel Exploits Part 1 – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充。导航0 前言 1 旧版 Windows 系统内核利用 2 搜寻内核漏洞2.1 枚举内核利用 - 手动 2.2 枚举内核利用 - 自动…

探秘Transformer系列之(12)--- 多头自注意力

从零开始解析Transformer,目标是:(1) 解析Transformer如何运作,以及为何如此运作,让新同学可以入门;(2) 力争融入一些比较新的或者有特色的论文或者理念,让老鸟也可以有所收获。探秘Transformer系列之(12)--- 多头自注意力 目录探秘Transformer系列之(12)--- 多头自注…

设备与onenet服务器之间的mqtt通讯

设备与onenet服务器之间的通讯 1. 登录onenet平台2.创建产品3.设备管理 1)创建两个进行测试功能4.MQTTfx测试password计算工具官网下载:OneNET - 中国移动物联网开放平台1)订阅属性上报结果通知消息 Subscribe的topic: $sys/改成自己的产品ID/改成自己的设备名称/thing/pro…

设计一个优秀 API 的秘诀

本指南深入探讨了顶级 API 设计,强调了它不仅仅是代码的集合。一个设计良好的 API 就像五星级礼宾服务,能够顺畅地引导用户达到他们的预期目标。拿起一杯咖啡,让我们一起探索创建一个功能强大、用户友好的 API 的秘诀吧! 理解 API 基础第一步:拥抱 REST - API 设计的基础 …

T428497 请不要抢走爱丽丝的工作! 题解

T428497 请不要抢走爱丽丝的工作! 题解题目传送门 本题要求扫地机器人半径 \(r\) 的最大值,既然要求最大值,容易想到二分答案。 那问题就转换为给定半径 \(R\) , 判断 \(R\) 满不满足条件,也就是能不能找到一条绕过所有障碍的路径。让我们逆转一下思维,考虑哪些区域是机器…

个人作业:软件案例分析

个人作业:软件案例分析项目 内容这个作业属于哪个课程 首页 - 2025年春季软件工程(罗杰、任健) - 北京航空航天大学 - 班级博客 - 博客园这个作业的要求在哪里 [I.2] 个人作业:软件案例分析我在这个课程的目标是 学习软件开发流程,完成一次完整的软件开发经历,提高开发和…

API 调试与管理工具选型思考:Apifox vs Apipost,企业究竟该如何选择

在企业级 API 调试与管理场景中,选择一款高效的工具至关重要。市面上的调试工具琳琅满目,而 Apifox 和 Apipost 是近几年两款备受开发者关注的 API 工具。二者都宣称为团队协作和接口调试赋能,但对企业来说,究竟谁才是更适合的选择呢?本文将从功能对比、用户体验、企业适配…

pos_cli 命令是如何运行起来的

追踪pos_cli --dump --dir /root/ckpt --pid [your program pid] 是如何运行的 pos_cli是通过mason,由sources包括的这些文件构建而来 #pos/cli/meson.buildproject_name = phoenix_os_cli project_name_abbreviation = pos_cli scan_src_path = meson.current_source_dir() +…