软件测试金融项目,在测试的时候一定要避开的一些雷区

2023-11-11 21:01

本文主要是介绍软件测试金融项目,在测试的时候一定要避开的一些雷区,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

软件测试金融项目需要格外谨慎和专注,因为这些项目通常涉及大量的交易、用户隐私和其他敏感信息。以下是一些软件测试金融项目时需要关注的方面:

1. 数据保护
在测试金融项目时,必须确保用户数据和投资信息得到保护。测试人员必须确保测试环境和测试数据安全,并遵守数据保护法规。

2. 性能测试
金融业务通常需要处理大量的数据和交易,因此性能测试至关重要。测试人员必须模拟负载和压力测试,以确定系统在高负载情况下是否正常运行。

3. 安全测试
在金融项目中,安全性非常重要。测试人员必须测试网络安全、身份验证、访问控制和数据加密等方面,以确保系统具有足够的安全性。

4. 遵守法规
金融领域有很多法规和合规性标准,例如SOX、PCI-DSS和GDPR等。测试人员必须知道这些法规并进行测试,以确保系统符合相关要求。

5. 用户体验
对于金融项目而言,用户体验也非常重要。测试人员必须确保用户界面易于使用、响应迅速且用户文档清晰易懂。

综上所述,测试金融项目需要特别关注数据保护、性能测试、安全测试、遵守法规和用户体验等方面。为了确保测试质量和项目成功,测试人员必须具备相关领域的知识和技能,并与开发人员和其他团队成员紧密合作。

有的产品比如员工贷既是指员工贷小类,也是指员工贷系列的产品,这时候需要关注需求描述的员工贷覆盖范围是产品大类还是小类。

      未带参数时是否有默认处理

  前端传输的某个值为空时,后端是否需要设默认值;

  接口返回的某个配置项为空时,前端是否需要展示默认选项。

  大小写处理成一致之后再匹配

  身份证校验的地方,需都转成同一种大小写格式再校验。

  基本校验不通过,数据是否还要提交

  在用户提交申请信息时,有的处理方法是提交时进行基本校验,校验不通过不允许提交/报错,不保存数据,后台无法查看真实的用户申请记录和情况,后续无法进行记录查看和数据分析,用户也无法查


看历史记录,体验感稍差。

  虽然从流程看没有问题,但是建议的做法是保存用户提交的记录,即使不通过也只是更改状态为校验未通过。

  处理出错时需要有结果

  后端处理出错时,尽量给友好的提示给用户(前端或后端处理都可),但不要直接把后端报的空指针或者空响应返回给用户。

  结果同步发送给其他系统还是异步发送

  比如额度申请需要风控系统进行处理,在用户提交申请后,如果同步发送请求给风控,当风控系统异常时,流程中断,数据未保留,在这种情况会容易由于系统问题丢失用户,影响业务,给用户带来不好的体验。

  对额度的处理

  提款时用的是审批额度而不是申请额度:用户申请20000,通过了15000,用户可提款的额度为15000而非20000;额度过期后需作废该笔额度(变更状态或者变更数值)。

  展示的地址

  如果省市区是分开填写和存储的,在展示详细地址时是否有把省市区详细地址组合(特别是合同上)。

  图片读取位置

  对不同文件类型存放的位置是否有区别,导致人审时无法查看证件照等其它客户资料。

  筛选数据时需要确认是只要某产品的数据还是所有产品数据

  针对公共模块的数据展示,需要确认仅需处理某产品的数据还是需要所有产品的数据,仅该用户名下的数据还是总的数据。

  需要加密的数据/需要解密的数据

  避免漏解密、重复加密的情况:数据库中用户名是加密的,展示时直接取数据库中的值而未进行处理。

  字典项对应

  检查配置项是否缺失,配置项是否使用正确。

  分页请求数据

  分页处理的数据需要验证每页请求的数量,避免出现数据重复和缺失的情况(如第一页请求6个数据,第二页开始请求5个数据,导致出现重复);下拉获取更多数据时较容易出现数据缺失的情况。

  金额单位是元还是分

  多个系统交互时,需注意两边的金额单位是否一致。

  金额一分钱差异

  金额类型进行计算操作可能有坑(先四舍五入后再计算还是先计算再四舍五入处理)。

  两个地方取值来源和方式不同,比如明细里的总额是前端自己处理的,我的页面的总额是直接取后端返回的。

  输入密码需要加密键盘


  基于安全考虑,金融系统输入密码时需要使用加密键盘。

  放款时分账给各主体的金额

  有的产品在放款/还款时需要分账,需要查看分账给各主体的具体金额是否正确。

  放出/收到的钱和记账的钱需要匹配

  需要关注放款表、实际放款的金额和借据金额、记账金额一致。

  放款订单号和还款订单号不能重复

  同一笔借据,即使放款和还款都是用同一支付方,也不能使用同一个订单号。

  查询的订单号是否发起的订单号

  发起支付的订单号是transno,查询时用了主键transid导致无订单数据。

  合同落款时间

  取当前签约时间还是合同时间,如果是当前签约时间,有可能由于签约失败隔天签约时合同落款时间非放款时间。

  合同的签章主体

  合同的签章主体需要和业务确认,避免出现签错章的情况。

  合同上金额小数位数

  合同上的金额数值需要精确到最低的数值,利率不能进行四舍五入。


  连续解绑多张银行卡,解绑验证码需重置

  解绑一张银行卡后,继续解绑第二张银行卡,此时获取短信验证码是否会直接取前一次的结果。

  重置支付密码、设置支付密码是否可设置小于6位

  如果仅校验两次输入的支付密码是否相等,有可能出现两次输入的密码确实相等但是并不等于6位的情况。

  支付接口更改支付金额、手续费,后端有无校验

  发起到支付系统的金额如果直接取支付接口的金额,则需要校验是否和账单金额一致,手续费是否和计算值一致,除了用户可更改支付金额的情况。

  重复支付

  同时操作同一笔订单(同一个账号不同客户端操作,不同用户操作同一笔账单)需拦截。

  支付后跳转

  支付成功后,选择系统键返回上一页或者页面返回上一页时,不能是支付页和支付确认。

  还款计划表新增字段需要日终同步任务增加保存

  如果借据表、还款计划表等表结构有新增字段,则日终处理任务中需增加处理和保存该字段,否则隔天/逾期后数据错误。

  同一借据多期数据并行处理需考虑处理顺序

  对借据进行还款、减免等操作时,需注意按期数顺序、科目顺序对项目进行处理。

  借据的还款卡需要是用户选择的还款卡

  当用户有多张银行卡时,借据的还款卡需要是用户设置的,且和代扣协议、借款合同对应,不可直接默认帮用户设置还款卡。

  冲销利息时,计提也需修改

  需要对借据进行冲销时,除了修改应收,还需要修改计提金额。

  最后一期进行退货、提前结清、代偿等

  在验证各种场景时,需要关注最后一期的处理,如最后一期内进行退货、提前结清、代偿;

  最后一期还款日进行退货、提前结清、代偿;

  最后一期宽限期进行退货、提前结清、代偿;

  以及这些场景下计算的手续费、应还利息等是否正确。

  短信挡板

  测试环境可能有短信挡板,上生产之前需要打开挡板验证是否能发送短信。

  支付结果主动通知和异步查询

  支付结果主动通知是指支付后将支付结果实时同步到其它系统;

  需要有定时任务重推支付结果,因此支付结果的通知状态需要记录;

       异步查询是指,如果没有主动通知/主动通知都异常,其它系统过来异步查询是否成功。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

这篇关于软件测试金融项目,在测试的时候一定要避开的一些雷区的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/392804

相关文章

Python 中 requests 与 aiohttp 在实际项目中的选择策略详解

《Python中requests与aiohttp在实际项目中的选择策略详解》本文主要介绍了Python爬虫开发中常用的两个库requests和aiohttp的使用方法及其区别,通过实际项目案... 目录一、requests 库二、aiohttp 库三、requests 和 aiohttp 的比较四、requ

SpringBoot项目启动后自动加载系统配置的多种实现方式

《SpringBoot项目启动后自动加载系统配置的多种实现方式》:本文主要介绍SpringBoot项目启动后自动加载系统配置的多种实现方式,并通过代码示例讲解的非常详细,对大家的学习或工作有一定的... 目录1. 使用 CommandLineRunner实现方式:2. 使用 ApplicationRunne

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

SpringBoot项目删除Bean或者不加载Bean的问题解决

《SpringBoot项目删除Bean或者不加载Bean的问题解决》文章介绍了在SpringBoot项目中如何使用@ComponentScan注解和自定义过滤器实现不加载某些Bean的方法,本文通过实... 使用@ComponentScan注解中的@ComponentScan.Filter标记不加载。@C

javafx 如何将项目打包为 Windows 的可执行文件exe

《javafx如何将项目打包为Windows的可执行文件exe》文章介绍了三种将JavaFX项目打包为.exe文件的方法:方法1使用jpackage(适用于JDK14及以上版本),方法2使用La... 目录方法 1:使用 jpackage(适用于 JDK 14 及更高版本)方法 2:使用 Launch4j(

Docker集成CI/CD的项目实践

《Docker集成CI/CD的项目实践》本文主要介绍了Docker集成CI/CD的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录一、引言1.1 什么是 CI/CD?1.2 docker 在 CI/CD 中的作用二、Docke

SpringBoot项目引入token设置方式

《SpringBoot项目引入token设置方式》本文详细介绍了JWT(JSONWebToken)的基本概念、结构、应用场景以及工作原理,通过动手实践,展示了如何在SpringBoot项目中实现JWT... 目录一. 先了解熟悉JWT(jsON Web Token)1. JSON Web Token是什么鬼

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择