目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
银行的软件测试是针对银行的软件系统(如柜面系统、信贷系统)和银行专用设备(如ATM机、自助柜员机等)进行的一系列测试工作。
1、 银行测试人员的组成
目前银行测试人员分为行方人员和非行方人员(外包)。
银行测试的主要执行人为非行方人员,其主要任务为分析需求、设计用例、执行用例、缺陷跟踪复测。
行方人员主要角色为管理层,把控项目进度以及上线时间并处理线上的一些问题。
2、银行测试的侧重点
因为银行的软件系统一般都是以业务为主体,所以测试的时候要特别关注整个系统的业务流程是否是顺畅的、无阻碍的。
例一:
A银行的柜面系统刚刚完成改造,我们回去验证这个新柜面系统的一些基本业务是否能够正常进行,比如开户流程、存取款流程。
例二:
B银行的信贷系统刚刚建立,我们回去验证这个信贷系统是否可以走完整贷前、贷中、贷后等业务流程,测试人员还要检验信贷系统和核心、风控等系统的对接是否正常来确保被测系统和与之有关联的系统之间的业务不阻塞,也确保系统与系统之间不会因为一些异常的操作和请求导致出现错误。
通过以上举例可以表明,银行的各个系统不是孤立的,是有业务联系的,因此测试时不仅要关注系统本身的功能也要关注业务流程和系统与系统之间的关联。
3、 银行测试类别划分
从全局高度来说,银行测试可以分为三类:功能、业务、场景。
1)功能测试
验证银行某系统的某个功能模块是否可以正常工作。
比如网银系统中的转账模块,就要通过转账操作来测试该模块功能是否正常。
2)业务流程的测试
为了保证业务能正常开展,在上线前要对整个业务流程进行详细的测试工作。
比如一个网贷业务系统,网贷是线上贷款系统,借款人可以通过贷款平台的手机APP直接在线进行贷款申请、借款、还款等操作、方便快捷,因此由银行(行方)出资贷款平台(平台方)负责吸收客户的网贷系统应运而生。
一般网贷涉及的系统会有平台方系统、渠道系统(行方提供的对外连接渠道,有加密、转译等功能)、网贷业务系统、核心系统、风控系统等。
以网贷的借款流程为例:
用授信申请通过的客户信息从平台方发送借款申请,申请经由渠道系统到达业务系统,再由业务系统发送到风控审核,风控将审核结果返回给业务系统(比如申请通过的结果),再由业务系统调用核心系统进行放款,核心放款成功,业务系统将放款结果经由渠道系统发送至平台方。
通过以上业务流程可以看出银行测试不是单方面的验证某一个系统的功能,而是根据业务规则对整个业务涉及到的系统都会做一个全流程的测试。
3)银行中场景类的测试
通过预设场景来验证软件系统是否可以正常工作。
比如网贷中的还款场景包含主动还款、自动还款、提前还款、逾期还款等。
以逾期还款为例:
我们事先准备好一个借款成功的客户,通过对还款账户做止付限制,在通过跑批使该客户贷款逾期,由此就制造了一个逾期的场景,在该场景下进行还款操作测试还款功能是否正常。
4、银行测试案例编写
在编写案例之前,首先先理解该交易对应的需求,把握交易中基本业务流以及备选流。
其中基本业务流主要是看该交易的基本功能是否已正确实现;
备选流是看涉及到选输项连带出异于基本流的交易页面,以及一些反例的情况。然后根据交易类型或者交易代码来划分大的场景,在大场景下,根据交易类型来划分小的场景。
若小场景下还涉及到对应的关联关系,再根据关联关系来细化。
最后根据划分的大小场景,根据所对应的需求,加之一些测试案例的编写方法来编写案例。
一般系统中的栏位大致可以分为:1)输入项;2)选输项;3)跳过项;4)回显项;5)选择项(下拉框形式)。
1)输入项:
该种栏位一般是输入卡号,账号,金额,凭证等。
这类的栏位,首先明确栏位的相关控制,然后再加上相对应的错误。
例如一般的交易都会涉及到金额这个输入项。除去一些栏位的特殊要求,在编写案例的时候,都应该考虑到金额的边界值,负数,除数字之外的字母,符号以及这个栏位的最大输入字符数等等。
2)选输项
这种栏位一般可输入,也可不输入。
遇到类似的情况,首先考虑该栏位要是输入的话,是否有限制,是只输入汉字,还是只输入数字等;
是否有规定最大的字符数。其次我们考虑应该是若不输入,是不是对交易的完成进行有影响。最后一般交易都会涉及到打印这个操作,我们也应考虑交易完成之后,针对该栏位打印出的结果是否能够正确显示
3)跳过项
该种栏位都会同一交易页面的某个栏位会有一定的联系。这类交易只需根据对应关系即可,当触发这个关系的是,看该栏位能否正确跳过就可以。
4)回显项
这种栏位跟上面跳过项有点类似,在涉案例的时候,我们除了考虑能否回显之外,还能考虑的是回显的内容是否正确,以及格式,排版方面是否美观等等
5)选输项
选输项的栏位分两种情况,第一种是根据之前的输入来选择该栏位的内容;
第二中是该栏位不同的选择会影响之后栏位的内容。遇到这种栏位的时候,通常会用到等价类的方法来划分可选择的项,当然前提还是得先捋清楚这个栏位跟其他栏位的关联关系。
最后需要补充一点的是,上面的所说的内容都是单纯从单一交易来说的。
在设计案例的时候,我们也应该考虑交易的一些后续操作。
如:开了一个通存通兑的账户,你得去验证该账户是否可以进行通存通兑的交易;
做了一笔转账交易,应该考虑到去查看下涉及账号的变化是否正确,以及系统中的流水记录是否准确等等。
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
每一个人都有权利去追求自己的梦想,只要你有足够的勇气和决心,无论前方有多少困难与挑战,都可以一一克服,最终实现自己的理想。
不要畏惧前方的艰难险阻,因为只有经历过风雨的洗礼,我们才能见到更美的彩虹。只有不断挑战自己,我们才能不断提升和成长。
每个人都有无限的可能性和潜力,关键是看你是否愿意去挖掘并充分地利用它。只有不断探索、创新和实践,我们才能创造出精彩的人生。