当前位置: 首页 > news >正文

【软件测试】支付模块测试攻略,这些测试方法和注意事项你掌握了么?

对于大部分人而言,支付模块或许是日常生活中最为关注和使用的功能之一,因此,对于支付模块的质量控制也显得尤为重要。

但考虑到支付涉及到金钱流转等敏感信息,一旦出现问题可能带来非常严重后果。因此,在支付模块测试方面,我们必须更加谨慎和细致。

本文将会向大家介绍一些实用的软件测试方法和注意事项,并围绕支付模块这一具体场景进行深入阐述。不论你是初学者还是资深测试人员,这些内容对你来说都将非常有用。

话不多说我们直接进入正题!!

支付流程示意图:

1、支付正常流程

按照需求说明,进行常规支付操作。期望,支付成功,且无任何报错情况。

(1)订单支付金额为整数

(2)订单支付金额为小数

(3)拆分类交易:交易进行拆分,上送拆分明细

(4)分别使用wifi和4G进行支付

2、支付异常流程

1.1 相关配置验证

  (1)未开通对应渠道的支付开关

  (2)未配置对应渠道的支付参数类

  (3)未安装对应渠道APP(支付宝、微信等)

  (4)未登陆对应渠道APP

1.2 支付基础验证

  (1)订单支付金额小于目前账户余额

  (2)拆分类交易:拆分金额与总金额不相等 

  (3)模拟用户进行付款后,使用fiddler等工具,将订单金额进行修改

  (4)支付请求完成后,不输入密码(一般支付渠道需要输入密码才能支付成功,但对于扫码类的被扫支付接口,微信和支付宝都有免密支付,金额<=1000时不需要输入密码,因此输入密码需要输入大金额)

  (5)支付输入密码时,直接关掉该页面(包含pc端支付、APP端支付)

  (6)支付请求完成后,输入密码错误(一般这种情况由渠道方进行控制,会提示密码错误,重新输入密码)

  (7)扫码类交易:生成二维码不扫,查看支付结果

  (8)扫码类交易:使用错误付款码进行支付(比如:微信渠道使用支付宝付款码)

  (9)超时测试:某些渠道会有支付超时时间,待过了超时时间进行支付

1.3 重复操作支付

  (1)输入密码错误重新支付

  (2)支付无响应时重复支付

  (3)支付完成后重新返回支付页面,重新支付

  (4)单笔订单多人支付

  (5)单笔订单一人多设备支付(比如手机和pc都可登录微信/支付宝)

  (6)单笔订单快速点击支付按钮支付

1.4 服务器类

  (1)支付完成后,未接收到异步通知时,我方服务器故障

  (2)支付完成后,未接收到异步通知,渠道方服务器故障

  (3)支付完成后,未接收到前台通知,我方服务器故障

  (4)支付完成后,未接收到前台通知,渠道方服务器故障

  (3)支付过程中,已下单,未成功进行支付时,渠道方服务器故障

  (4)发起支付时,我方服务器故障

  (5)发起支付时,渠道方服务器故障

1.5 网络问题

  (1)弱网环境下,支付请求超时,查看支付订单是否有生成,查看支付情况

  (2)弱网环境下,输入密码支付成功后,返回相关页面或者APP时请求超时,查看订单支付情况

  (3)支付过程中,切换设备网络情况,比如WiFi切换4G/4G切换WiFi,查看支付情况

  (4)用户点击支付后,出现网络异常等影响支付流程问题,查看数据库是否有待支付订单生成

  (5)用户点击支付后,出现网络异常等影响支付流程问题恢复后,验证页面是否进行刷新,用户是否继续进行支付

  (6)用户输入密码支付后,还未接收到成功通知时,出现网络异常等影响支付流程问题,查看数据库该笔订单是否成功

  (7)用户输入密码支付后,还未接收到成功通知时,出现网络异常等影响支付流程问题恢复后,查看用户是否收到前台支付结果通知页面

 

支付结果涉及到用户使用方面,所以在异常时相关提示需清楚明了,并且支付页面不可有明显错误出现,不能有显示乱码情况。在用户交互方面,可根据一般页面测试规范进行测试。

支付接口完成后,需要具备完善的查询机制,在网络或者服务器问题导致订单支付成功后不能接收到成功的异步通知时,需要通过查询对账来修改系统的支付结果。

结语

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

都到这了记得三连支持一下吧。

-------------------------------------------------

完整版文档下载方式:

留言【软件测试学习】免费获取

这些资料,对于从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享。

 最后再唠唠一句,如果想以测试为长期发展职业目标,是需要时刻保持学习的,要使自己具备竞争力,无论你现在工作几年,只要行动起来,你就已经占优势了,好啦就到这里了,祝大家2023年能升职加薪,没入职的就早日拿到心仪公司的offer,事事顺遂。

 

相关文章:

【软件测试】支付模块测试攻略,这些测试方法和注意事项你掌握了么?

对于大部分人而言&#xff0c;支付模块或许是日常生活中最为关注和使用的功能之一&#xff0c;因此&#xff0c;对于支付模块的质量控制也显得尤为重要。 但考虑到支付涉及到金钱流转等敏感信息&#xff0c;一旦出现问题可能带来非常严重后果。因此&#xff0c;在支付模块测试…...

刷完这个笔记,17K不能再少了....

大家好&#xff0c;最近有不少小伙伴在后台留言&#xff0c;得准备面试了&#xff0c;又不知道从何下手&#xff01;为了帮大家节约时间&#xff0c;特意准备了一份面试相关的资料&#xff0c;内容非常的全面&#xff0c;真的可以好好补一补&#xff0c;希望大家在都能拿到理想…...

知识变现创业指南-《知识变现秘籍》

《知识变现秘籍》 知识变现创业者指南 读完将改变你的认知 开阔你的知识变现思路 系统掌握知识变现的要点 知识付费创业方法 帮你利用知识赚到你弟一桶金 如果你有一技之长&#xff0c;想变现 如果你有一身才华&#xff0c;想变现 如果你在某个领域有绝活 如果你是&am…...

springboot+java博物馆文物管理系统

用户前台进入系统可以进行首页、文物信息、论坛交流、文物资讯、留言反馈、我的、跳转到后台等springboot是基于spring的快速开发框架, 相比于原生的spring而言, 它通过大量的java config来避免了大量的xml文件, 只需要简单的生成器便能生成一个可以运行的javaweb项目, 是目前最…...

Ansible 自动化运维工具(二)——Ansible 的脚本(playbook 剧本)

Ansible 自动化运维工具—Ansible 的脚本playbook 剧本 playbooks 概述以及实例操作playbooks 的组成操作示例一&#xff1a;编写yaml文件也就是playbook修改配置文件并放入/opt/目录下运行playbook 操作实例二&#xff1a;定义、引用变量操作示例三&#xff1a;指定远程主机su…...

阿里云镜像服务下载并安装Go环境

【阿里云镜像】下载并安装Go环境 一、参考链接 阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com) golang镜像-golang下载地址-golang安装教程-阿里巴巴开源镜像站 (aliyun.com) GO语言安装以及国内镜像 - DbWong_0918 - 博客园 (cnblogs.com) 二、Go介绍 Gol…...

工作线程快速优雅退出方式探讨

本文我们不用定时器。定时器会阻塞消息循环。先看需求&#xff1a; 我们先看第一种&#xff0c;有一个任务&#xff0c;要求每1秒钟执行一次&#xff0c;最常见的写法如下两种 bool bExitThread false; DWORD WorkThread1(LPVOID param) {while (false bExitThread){//// to…...

甘特图控件DHTMLX Gantt教程:用PHP:Laravel实现Gantt(上)

DHTMLX Gantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表。可满足项目管理应用程序的大部分开发需求&#xff0c;具备完善的甘特图图表库&#xff0c;功能强大&#xff0c;价格便宜&#xff0c;提供丰富而灵活的JavaScript API接口&#xff0c;与各种服务器端技术&am…...

ffmpeg-命令大全03

ffplay/mpv 查看所有的解码器 ffplay -decoders >>decoders.txt ffplay无延时无缓存播放 ffplay -fflags nobuffer -i "%1" ffplay指定size播放 ffplay -x 480 -y 270 -i "%1" ffplay指定解码器 ffplay -vcodec hevc_cuvid "%1" […...

MATLAB中太赫兹时域光谱的最大似然参数估计

目录 一、引言 二、最大似然估计的基本原理 三、MATLAB中的最大似然估计实现 四、太赫兹时域光谱的最大似然参数估计 五、结论 六、参考文献 一、引言 太赫兹波&#xff08;Terahertz wave&#xff09;是电磁谱中介于微波与光波之间的一段频率范围&#xff0c;频率大约在…...

详解MySQL的并发控制

目录 1.概述 2.事务 2.1.什么是事务 2.2.事务的隔离级别 2.2.1.三种数据一致性问题 2.2.2.四种隔离级别 2.3.如何设置隔离级别 3.锁 3.1.锁与事务的关系 3.2.分类 3.3.表锁 3.3.1.概述 3.3.2.读锁 3.3.3.写锁 3.3.4.保护机制 3.4.行锁 3.4.1.概述 3.4.2.什么…...

Android Termux安装MySQL数据库 | 公网安全远程连接【cpolar内网穿透】

文章目录 前言1.安装MariaDB2.安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前言 Android作为移动设备&#xff0c;尽管最初并非设计为服务器&#xff0c;但是随着技术的进步我们可以将Android配置为生产力工具&#xff0c;变成一个随身…...

SpringBoot的常见配置

SpringBoot基础配置 1. 配置文件格式问题导入1.1 修改服务器端口1.2 自动提示功能消失解决方案1.3 SpringBoot配置文件加载顺序 2. yaml问题导入2.1 yaml语法规则2.2 yaml数组数据2.3 yaml数据读取 3. 多环境开发配置问题导入3.1 多环境启动配置3.2 多环境启动命令格式3.3 多环…...

LabVIEWCompactRIO 开发指南25 实施LabVIEW FPGA代码的方法

LabVIEWCompactRIO 开发指南25 实施LabVIEW FPGA代码的方法 开始开发时&#xff0c;应在LabVIEW项目的FPGA目标下创建VI&#xff0c;以便使用LabVIEW FPGA选板进行编程&#xff0c;该选板是LabVIEW选板的子集&#xff0c;包括一些LabVIEW FPGA特定函数。 应该在仿真模式下开…...

如何利用Jmeter从0到1做一次完整的压测

压测&#xff0c;在很多项目中都有应用&#xff0c;是测试小伙伴必备的一项基本技能&#xff0c;刚好最近接手了一个小游戏的压测任务&#xff0c;一轮压测下来&#xff0c;颇有收获&#xff0c;赶紧记录下来&#xff0c;与大家分享一下&#xff0c;希望大家能少踩坑。 一、压测…...

蓝桥:前端开发笔面必刷题——Day1 数组(一)

文章目录 &#x1f4cb;前言&#x1f3af;数组中重复的数字&#x1f4da;题目内容✅解答 &#x1f3af;两数之和&#x1f4da;题目内容✅解答 &#x1f3af;替换空格&#x1f4da;题目内容✅解答 &#x1f3af;二维数组中的查找&#x1f4da;题目内容✅解答 &#x1f4dd;最后 …...

SQL 教程-入门基础篇

文章目录 SQL 简介SQL 语法SQL SELECT 语句SQL SELECT DISTINCT 语句SQL WHERE 子句SQL AND & OR 运算符SQL ORDER BY 关键字SQL INSERT INTO 语句SQL UPDATE 语句SQL DELETE 语句 SQL 简介 SQL&#xff08;Structured Query Language&#xff09;是一种用于管理和操作关系…...

循环自相关函数和谱相关密度(六)——信号的循环平稳性(循环自相关函数)原理及推导

在通信、遥测、雷达和声纳系统中,一些人工信号是一类特殊的非平稳信号,它们的非平稳性表现为周期平稳性。通信信号常用待传输信号对周期性信号的某个参数进行调制、如对正弦载波进行调幅、调频和调相,以及对周期性脉冲信号进行脉幅、脉宽和脉位调制,都会产生具有周期平稳性…...

C/C++:04. 多态和虚函数

不加virtual&#xff0c;只能访问成员变量&#xff0c;不能访问成员函数 文章目录 前言1 虚函数与多态不用虚函数的多态使用虚函数的多态 2 C虚函数注意事项 构成多态的条件C虚函数注意事项构成多态的条件什么时候声明虚函数 3 C虚析构函数的必要性总结 前言 本节阐述C中的多态…...

拿下多个定点/比亚迪要上!这项技术要「降维打击」单目感知

2008年&#xff0c;斯巴鲁在全球首次推出了搭载有立体视觉摄像头的主动安全解决方案&#xff0c;并具有紧急制动功能的“EyeSight”。2010年&#xff0c;斯巴鲁推出升级版的“EyeSight”&#xff0c;成为世界上首个可以在全车速范围内避免碰撞的量产技术系统。 2014年&#xff…...

知识图谱-实战演练:从零构建A股投资图谱

1. 为什么需要A股投资知识图谱 在金融投资领域&#xff0c;信息就是财富。但A股市场有4000多家上市公司&#xff0c;每天产生的公告、财报、行业数据等信息量巨大。传统的数据表格和简单查询很难快速发现隐藏在数据背后的关联关系。 举个例子&#xff0c;你想知道&#xff1a; …...

HC-SR04超声波测距库:非阻塞驱动与工业级抗干扰设计

1. HC-SR04超声波测距库技术解析与工程实践HC-SR04是嵌入式系统中应用最广泛的低成本超声波测距模块之一&#xff0c;其工作原理基于声波在空气中的传播时间&#xff08;Time of Flight, TOF&#xff09;测量距离。该模块由一个超声波发射器、一个接收器、控制逻辑电路和信号调…...

软件构建管理中的依赖管理优化

软件构建管理中的依赖管理优化 在现代软件开发中&#xff0c;依赖管理是软件构建过程中的核心环节之一。随着项目规模的扩大和第三方库的广泛使用&#xff0c;依赖关系的复杂性急剧增加&#xff0c;如何高效管理这些依赖成为开发团队必须面对的挑战。优化依赖管理不仅能提升构…...

[Linux][虚拟串口]x一个特殊的字节蓟

简介 langchain专门用于构建LLM大语言模型&#xff0c;其中提供了大量的prompt模板&#xff0c;和组件&#xff0c;通过chain(链)的方式将流程连接起来&#xff0c;操作简单&#xff0c;开发便捷。 环境配置 安装langchain框架 pip install langchain langchain-community 其中…...

吃灰安卓机变身 OpenClaw 服务器 — 完整手册纲

前言 在使用 kubectl get $KIND -o yaml 查看 k8s 资源时&#xff0c;输出结果中包含大量由集群自动生成的元数据&#xff08;如 managedFields、resourceVersion、uid 等&#xff09;。这些信息在实际复用 yaml 清单时需要手动清理&#xff0c;增加了额外的工作量。 使用 kube…...

【紧急预警】传统音视频微服务架构将在2026Q3大规模失效——SITS2026原生处理标准已强制嵌入工信部信创目录

第一章&#xff1a;SITS2026分享&#xff1a;AI原生音视频处理 2026奇点智能技术大会(https://ml-summit.org) AI原生音视频处理正从“AI辅助”迈向“AI驱动”的范式跃迁——模型不再仅作为后处理模块嵌入传统管线&#xff0c;而是从采集、编码、传输到渲染的全链路深度重构。…...

Arduino Modulino库:Qwiic模块的I²C设备抽象与工程实践

1. 项目概述Arduino Modulino 库是一个面向嵌入式硬件工程师的轻量级 IC 设备管理框架&#xff0c;专为简化 Qwiic 生态系统中模块化外设&#xff08;Modulino&#xff09;在 Arduino 平台上的集成而设计。与通用型传感器库不同&#xff0c;该库并非简单封装底层Wire调用&#…...

基于深度神经网络的苹果病害叶片分类识别

前言 苹果是我国的重要经济作物之一&#xff0c;其产量和消费量均居世界第一。然而&#xff0c;苹果病害的发生给苹果产业带来了巨大的损失。因此&#xff0c;准确地识别苹果叶片和果实上的病害&#xff0c;及时采取防治措施&#xff0c;成为保障苹果产量和品质的关键。 本文通…...

Redis:延迟双删的适用边界与落地细节使

pagehelper整合 引入依赖com.github.pagehelperpagehelper-spring-boot-starter2.1.0compile编写代码 GetMapping("/list/{pageNo}") public PageInfo findAll(PathVariable int pageNo) {// 设置当前页码和每页显示的条数PageHelper.startPage(pageNo, 10);// 查询数…...

如何快速掌握LangGraph:构建智能工作流的5大秘诀

如何快速掌握LangGraph&#xff1a;构建智能工作流的5大秘诀 【免费下载链接】langgraph Build resilient language agents as graphs. 项目地址: https://gitcode.com/GitHub_Trending/la/langgraph LangGraph是一个强大的图网络框架&#xff0c;专门用于构建可编排、可…...