【银行测试】金融银行-理财项目面试/分析总结(二)

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

银行理财相关的项目流程

项目名称:xxx农商银行手机银行App

项目介绍:此项目是专为手机银行客户打造的移动金融服务平台,为客户提供实时、高效的账户和资金管理。主要包括理财服务、基金服务、贷款服务、账户管理、转账汇款、储蓄服务、生活缴费、利率查询和网点查询等金融服务。

在安全方面,采用数据全程加密、密码超限保护和登录超时控制等机制,并通过用户信息绑定、短信验证等多种安全措施,为客户的资金交易保驾护航。

项目职责:
1)根据模块功能要求进行需求分析,参与产品组织的需求评审会议;
2)根据需求文档,选择测试方法通过XMind提取测试点并编写测试用例;
3)使用Postman进行接口测试,接口测试完成之后进行系统测试,待系统测试稳定之后,选择部分接口在tests标签中通过添加断言实现接口自动化;
4)通过adb命令对APP的进行安装、卸载测试以及用命令logocate查看日志;使用Monkey工具关注APP的稳定性;
5)使用GT工具监测app的Cpu占用、内存消耗、耗电量等客户端性能指标;
6)使用抓包工具Fiddler,进行弱网测试并抓包判断前后端的问题;
7)提交bug到禅道,对bug进行跟踪、管理直至bug解决并关闭;
8)整理测试记录,编写测试报告,通过PPT做测试总结;
9)产品上线后对用户建议、版本迭代更新等数据持续关注。

模块介绍

在这个App里面,快速贷款以及理财模块都是属于比较核心的功能,讲一下所负责的理财模块。

打开理财界面,理财产品的展示栏位和顺序符合需求,选择需要测试的理财产品,产品列表中展示信息与需求一致,也可以通过搜索功能找到该产品。点击该理财产品,进入详细界面。界面展示与需求一致。

点击申购:
1)系统判断是否有理财账户,如果有一类卡未开通理财功能,可通过跳转界面开通。

2)如果没有一类卡,我行允许根据跳转界面开通二类户。

有理财账户后,会判断客户的风险等级。如从来没有做过风险评估等级或评估已过有效期的,则需要重新评估。

如果没有做过风险评估的客户,我们是有跳出来一个提示让客户先去做一个风险评估,评估有10道题,分别涉及(总资产、投资比例、投资方向,投资经验、投资态度、投资目的等)。

评估出来会有一个对应的等级,等级分为:R1到R5, R1代表承受风险能力比较低,R5代表风险承受能力比较高。

如果做过评估,评估在有效时间内,我们有效时间是1年期,在有效时间内是可以跳转到产品详情页面的,然后产品详情页面需要判断客户风险评估等级与产品风险等级的匹配性。

例如,客户风险等级为R1,则只能购买风险等级为R1的产品;客户风险等级为R5,则可以购买风险等级为R1到R5的所有产品。在允许购买的界面,可以看到具体的申购和赎回规则。

申购界面是否与需求一致,展示内容包含产品的名称和编号,卡号后4位和余额反显正确,申购金额可以手动填写。

需要测试银行卡余额的边界值打个比方我的卡账户余额就1万块钱,那我会测一下9999.99元, 1万, 1万点01元都去测下,不管是自营产品还是代销产品,因为每个产品规则不一样,我们会根据需求来测。

有的有起购金额设定的是100元、 1000 元、 1万元, 那么我们都需要分别利用边界值去测一下,像第二次购买叫追加,追加也是一样的比如追加10元, 100元都去测,包括日上线额、总上限金额都是用边界值去测的。

如果金额填写没有问题,接下来需要勾选知情同意框,知情同意文档一般包含风险提示、产品概要、招募说明书、基金合同、权益须知。

这个地方我们是有一个强制阅读勾选的,需要客户点开详情下滑至底部,才可以勾选知情同意框,如果不勾选是没办法点击这个购买这个操作的。

购买成功的话我们也会有相应的提示,然后我们会去查看一下,打个比方我这个产品交易日15:00之前,当日确认份额,交易日15:00之后,顺延一个交易日。

此处,我们测试组会特别关注周一和周五两种情况,我们也分工作日、非工作日,非工作日按照第二个工作日来确认份额的。

然后已申购的产品,点击该理财产品,有赎回按钮。点击赎回,赎回金额需校验持有该产品的份额,根据需求,交易日15:00之前,赎回当日到账,交易日15:00之后,顺延一个交易日。

此处,我们测试组会也会特别关注周一和周五两种情况。对赎回的金额,进行利息验证。

利息的验证方法,针对不同的理财产品:

日收益=本金*年利率/360;
收益=金额/10000*万份收益;赎回总金额=持有的份额*赎回时的单位净值。

整个大致流程大概是这样的,谢谢!

功能介绍

在理财模块中,最重要的是对申购和赎回进行验证。
在此列举出相应的测试点、申购及时确认测试点:

1)界面提示申购成功,银行卡收支明细(购买理财产品),卡余额(活期可用+投资理财)

2)理财基金订单明细,个人持仓增加,资管系统查询到剩余额度减少
3)数据库,核心的余额表、明细表,资管系统的持仓明细表数据比对
4)与其他渠道(微信银行、网银)核对,数据一致申购未能及时确认:

界面提示申购成功,银行卡收支明细(冻结,到交易时间解除冻结,购买理财产品),卡余额(活期可用+冻结);

理财基金订单明细,个人持仓增加,资管系统查询到剩余额度减少;

数据库,核心的余额表(可用余额状态码值00,冻结状态码值01)、明细表中有冻结的明细,资管系统的持仓明细表未体现;

跑批之后,银行卡收支明细(解除冻结,购买理财产品),卡余额(活期可用+投资理财);

数据库,核心的余额表、明细表,资管系统的持仓明细表数据比对;

5)与其他渠道(微信银行、网银)核对,数据一致赎回测试点:
界面提示赎回申请提交成功,(T+N,过N个日终)等赎回到账,查银行卡收支明细;

活期可用增加(增加金额=赎回到账的本金+利息),卡余额增加;
理财基金订单明细,个人持仓减少,资管系统查询到剩余额度;
数据库,核心的余额表、明细表,资管系统的持仓明细表;
与其他渠道(微信银行、网银)核对,数据一致;
核对利息的计算第三部分:接口测试案例;

申购模块:

1)我会先找开发要API文档,在jmeter里面先创建线程组,在添加取样器里面创建http请求,根据接口文档把url地址填进去

2)申购的接口入参 token, 产品id,卡号id,金额,推荐人选填,知情同意框协议勾选true/false,请求方式是post

3)然后查看结果树,那我就看到出参 就是状态码code:00 、code:01 状态描述message:申购成功/您的可用余额不足,不能进行申购 date

4)先把正例跑一遍,反例无非就是token值为空第四部分:典型Bug案例
购买的理财产品,按照正常日期进行了赎回操作,也选择了赎回资金需要到账的银行卡。

但是已经超过了到账日期,银行卡还没有收到赎回的资金。

后面排查原因是因为客户选择赎回资金的到账储蓄卡是属于睡眠户,所以无法到账,这个是客户的非常规操作,测试的时候忽略了这一点。

只要储蓄账户状态不正常(如状态为睡眠、久悬、转营业外等),都不能进行资金交易往来。如果客户一定要使用这个储蓄卡,需持本人有效身份证件及相关银行卡前往就近任一建行网点核实处理,更改账户状态才能正常使用。

后期需求变更,客户不能手动去选择赎回路径(指定赎回的储蓄卡),所有的理财产品赎回的时候资金都应该按照原路径返回。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

不要惧怕失败,因为失败是成功的跳板。奋斗不止于结果,而在于过程中的成长和坚持。相信自己的潜力,追求梦想,你将创造属于自己的辉煌传奇。

每一次的努力都是蜕变的契机,不论困难有多大,只要坚守初心,持之以恒,你将越过山巅,触摸到属于自己的星辰大海。相信自己,勇往直前,终将抵达成功的彼岸。

生命太短暂,不要浪费时间在无意义的事情上。坚信自己的能力,拥抱挑战,才能在奋斗中成为更好的自己,创造属于自己的精彩人生。

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

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

相关文章

CSS 纵向扩展动画

上干货 <template><!-- mouseenter"startAnimation" 表示在鼠标进入元素时触发 startAnimation 方法。mouseleave"stopAnimation" 表示在鼠标离开元素时触发 stopAnimation 方法。 --><!-- 容器元素 --><div class"container&q…

Spark编程范例:Word Count示例解析

Apache Spark是一个强大的分布式计算框架&#xff0c;用于处理大规模数据。Word Count示例是Spark入门教程中的经典示例&#xff0c;旨在展示如何使用Spark来进行简单的文本处理和数据分析。本文将深入解析Word Count示例&#xff0c;以帮助大家更好地理解Spark的基本概念和编程…

关于Echarts的重要属性总结

概要 1.设置图例字体颜色&#xff1a; legend: {//添加位置如下textStyle: {color: #fff // 设置图例文字颜色为白色}} 2.设置序列颜色&#xff1a; series: [{ // 添加位置如下itemStyle: { color: #FFA500 // 设置序列Series颜色}] 3.设置坐标轴单位&#xff1a; xAx…

【Shell编程练习】通过位置变量创建 Linux 系统账户及密码

系列文章目录 输出Hello World 系列文章目录位置变量代码实现运行结果 位置变量 位置变量将以数字方式对变量进行命名&#xff0c;可将命令行参数的值存储到脚本中。要从命令行、函数或脚本执行等处传递参数时&#xff0c;就需要在 Shell 脚本中使用位置参数变量。下表为常用…

LVM逻辑卷与扩容

目录 一.LVM&#xff1a; 1.什么是LVM&#xff1a; 2.LVM的基本核心组件&#xff1a; 3.LVM的基本命令&#xff1a; 二.逻辑卷的创建&#xff1a; 第一步&#xff0c;我们先要为虚拟机添加硬盘 然后我们要添加依赖包 然后我们要进行磁盘分区 再添加好分区后&#xff0…

测试C#使用OpenCvSharp从摄像头获取图片

OpenCvSharp也支持获取摄像头数据&#xff0c;不同于之前测试AForge时使用AForge控件显示摄像头数据流并从中截图图片&#xff0c;OpenCvSharp中显示摄像头数据流需要周期性地从摄像头中截取图片并显示在指定控件中。本文学习C#使用OpenCvSharp从摄像头获取图片的基本方式。  …

MybatisX逆向工程方法

官方文档链接&#xff1a;MybatisX快速开发插件 | MyBatis-Plus (baomidou.com) 使用MybatisX可以快速生成mapper文件&#xff0c;实体类和service及实现 效果 方法&#xff1a;首先下载mybatisX插件 然后创建数据库信息 然后选中表&#xff0c;右键&#xff0c;点击Mybatis…

知识积累 电源模块的介绍

1. 电源模块是什么 电源模块是一种设备或组件&#xff0c;用于提供电能供应给其他电子设备或系统。它通常包括电源转换、稳压、过流保护等功能&#xff0c;以确保输出的电能在一定电压和电流范围内稳定可靠。电源模块可以是线性电源或开关电源&#xff0c;具体类型取决于其工作…

Linux中的gcc\g++使用

文章目录 gcc\g的使用预处理编译汇编链接函数库gcc选项 gcc\g的使用 这里我们需要知道gcc和g实际上是对应的c语言和c编译器&#xff0c;而其他的Java&#xff08;半解释型&#xff09;&#xff0c;PHP&#xff0c;Python等语言实际上是解释型语言&#xff0c;因此我们经常能听…

2013年第二届数学建模国际赛小美赛B题寄居蟹进化出人类的就业模式解题全过程文档及程序

2013年第二届数学建模国际赛小美赛 B题 寄居蟹进化出人类的就业模式 原题再现&#xff1a; 寄居蟹是美国最受欢迎的宠物品种&#xff0c;依靠其他动物的壳来保护。剥去寄居蟹的壳&#xff0c;你会看到它柔软、粉红色的腹部卷曲在头状的蕨类叶子后面。大多数寄居蟹喜欢蜗牛壳&…

【iOS安全】越狱iOS安装Frida | 安装指定版本Frida

越狱iPhone安装Frida 本文的方法适用于已越狱的iPhone手机 打开Cydia&#xff0c;软件源&#xff0c;编辑&#xff08;右上角&#xff09;&#xff0c;添加&#xff08;左上角&#xff09;&#xff1a;https://build.frida.re 然后搜索Frida&#xff0c;点击安装 参考&#x…

mysql原理--MySQL基于规则的优化

设计 MySQL 的大叔依据一些规则&#xff0c;竭尽全力的把一些很糟糕的语句转换成某种可以比较高效执行的形式&#xff0c;这个过程也可以被称作 查询重写 &#xff08;就是人家觉得你写的语句不好&#xff0c;自己再重写一遍&#xff09;。 1.条件化简 我们编写的查询语句的搜…

Centos7:Jenkins+gitlab+node项目启动(2)

Centos7&#xff1a;Jenkinsgitlabnode项目启动(1) Centos7&#xff1a;Jenkinsgitlabnode项目启动(1)-CSDN博客 Centos7&#xff1a;Jenkinsgitlabnode项目启动(2) Centos7&#xff1a;Jenkinsgitlabnode项目启动(2)-CSDN博客 Centos7&#xff1a;Jenkinsgitlabnode项目启…

第十四章 Sentinel实现熔断与限流

Sentinel实现熔断与限流 gitee&#xff1a;springcloud_study: springcloud&#xff1a;服务集群、注册中心、配置中心&#xff08;热更新&#xff09;、服务网关&#xff08;校验、路由、负载均衡&#xff09;、分布式缓存、分布式搜索、消息队列&#xff08;异步通信&#x…

EXPLORING DIFFUSION MODELS FOR UNSUPERVISED VIDEO ANOMALY DETECTION 论文阅读

EXPLORING DIFFUSION MODELS FOR UNSUPERVISED VIDEO ANOMALY DETECTION 论文阅读 ABSTRACT1. INTRODUCTION2. RELATEDWORK3. METHOD4. EXPERIMENTAL ANALYSIS AND RESULTS4.1. Comparisons with State-Of-The-Art (SOTA)4.2. Diffusion Model Analysis4.3. Qualitative Result…

C练习——银行存款

题目&#xff1a;设银行定期存款的年利率 rate为2.25%,已知存款期为n年&#xff0c;存款本金为capital 元,试编程计算并输出n年后本利之和deposit。 解析&#xff1a;利息本金*利率&#xff0c;下一年的本金又是是今年的本利之和 逻辑&#xff1a;注意浮点数&#xff0c;导入…

经典目标检测YOLO系列(一)复现YOLOV1(2)反解边界框及后处理

经典目标检测YOLO系列(一)复现YOLOV1(2)反解边界框及后处理 在上个博客&#xff0c;我们提出了新的YOLOV1架构&#xff0c;这次我们解决前向推理过程中的两个问题。 经典目标检测YOLO系列(一)YOLOV1的复现(1)总体架构 1、边界框的计算 1.1 反解边界框公式的改变 1.1.1 原版…

MFC随对话框大小改变同时改变控件大小

先看一下效果; 初始; 窗口变大,控件也变大; 二个也可以; 窗口变大,控件变大; 默认生成的对话框没有WM_SIZE消息的处理程序;打开类向导,选中WM_SIZE消息,对CxxxDlg类添加该消息的处理程序;默认生成的函数名是OnSize; 添加了以后代码中会有三处变化; 在对话框类的…

call、apply、bind应用题型

这道题&#xff0c;考察的是修改this指向&#xff0c;延申到call&#xff0c;apply和bind的作用和区别。 <!DOCTYPE html> <html><head><meta charset"UTF-8"><style>/* 填写样式 */</style> </head><body><!-- …

连接GaussDB(DWS)报错:Invalid or unsupported by client SCRAM mechanisms

用postgres方式连接GaussDB(DWS)报错&#xff1a;Invalid or unsupported by client SCRAM mechanisms 报错内容 [2023-12-27 21:43:35] Invalid or unsupported by client SCRAM mechanisms org.postgresql.util.PSQLException: Invalid or unsupported by client SCRAM mec…