目录:导读
- 前言
- 一、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性能测试
九、总结(尾部小惊喜)
不要惧怕失败,因为失败是成功的跳板。奋斗不止于结果,而在于过程中的成长和坚持。相信自己的潜力,追求梦想,你将创造属于自己的辉煌传奇。
每一次的努力都是蜕变的契机,不论困难有多大,只要坚守初心,持之以恒,你将越过山巅,触摸到属于自己的星辰大海。相信自己,勇往直前,终将抵达成功的彼岸。
生命太短暂,不要浪费时间在无意义的事情上。坚信自己的能力,拥抱挑战,才能在奋斗中成为更好的自己,创造属于自己的精彩人生。