手机充值的功能测试框架 - 测试要点

news2024/10/11 10:20:43

手机充值有微信营销活动的、有 APP 页面应用等,以下是我以前公司的手机充值话费或流量应用的测试要点,分享给大家参考下。

一、手机号码输入框检查

1、手机号码框要控制成只能输入11位数字的文本框。

2、输入以非1开头的手机号,给出提示:请输入正确的手机号码。需要分别验证以非1开头的数字(0\2\3)或字母等其他字符开头的情况。

3、输入带有英文字母的手机号,系统自动忽略非数字字符(即控制不能输入英文字母)。

4、输入带有特殊符号)/&(的手机号,系统自动忽略非数字字符(即控制不能输入特殊符号)。

5、输入不存在的手机号12345678901,11111111111,给出提示:暂不支持该手机号码。

6、输入不存在的手机号12345678901,退格后,提示语:暂不支持该手机号码。应不再显示。

7、手机号码输入框字体大小应固定为22px。打开话费充值链接,光标定位到输入框,空白地方右键选择“审查元素”,选择某手机机型,查看代码元素“font-size: 22px;”。

8、手机号码输入框所在行,点击任意地方,均应获取到焦点在输入框,保证用户能够正常使用。注:区分IOS和安卓的手机来测试

二、充值界面显示信息的检查

1、输入正确手机号,显示对应的地区归属地和运营信息,格式:运营商标识 归属地 运营商名称。

2、先输入正确手机号,有归属地和价格显示;接着输入带有英文字母的手机号,给出提示的同时上一次的“归属地和价格”应不再显示。

3、不同充值面额的支付金额是否显示正确。比如:10元,50元,100元

4、若有手机号面额支付金额的确认界面,则选择不同的面额来检查支付金额是否正确。

5、温馨提示的文字检查,查看是否有错别字,或是语句不通的语句。

6、检查客服热线电话是否正确。不同充值面额的供应商不同,客服热线电话就会不同。客服热线电话的值来源于接入者列表对应供应商的客服电话。注:区分IOS和安卓的手机来测试

三、按钮的检查

1、输入正确的手机号,点击【立即充值】按钮,能够正常进入支付界面,支付成功,充值成功。

2、连续多次【立即充值】,是否会生成多笔充值流水,应只有一笔充值流水。

3、连续多次【支付】,是否会给出提示,并且有一笔流水支付状态为支付成功。

4、【提交】按钮:确认展示的手机号码和面额正确后,点击提交,进入到下一步页面,支付界面,支付成功,充值成功,提示“恭喜,话费充值成功”。

5、若存在【返回】按钮:点击返回,返回上一步页面,要重新输入充值的手机号码。

6、当跳转到充值成功界面时,存在【返回充值首页】按钮:点击该按钮,可以返回首页,显示的页面正确。

7、当充值失败时,点击【返回重新充值】按钮是否会跳转到默认充值界面,应跳转到默认充值界面。

8、手机号码框存在【清除】按钮:手机号码非空有效,手机号码清空后恢复进入默认充值界面。

9、【立即充值】按钮:默认时不可用,输入有效手机号码才可用,输入有效手机后退清除,立即充值按钮呈不可用。注:区分IOS和安卓的手机来测试

四、充值的不同场景

1、正常充值流程,充值成功,订单状态为充值成功,支付状态为支付成功

2、在支付界面,取消支付,订单状态为待充值,支付状态为待支付

3、在支付界面,支付成功后,直接关闭界面未进行充值处理,订单状态为待充值,支付状态为支付成功,过15分钟左右,充值状态变为充值成功

4、支付成功,供应商账户余额不足,不能进行充值处理,订单状态为充值失败,支付状态为支付成功

5、银行账户余额不足,订单状态为待充值,支付状态为支付失败,过15分钟左右,充值状态更新为充值失败,处理状态更新为放弃处理

6、输入支付验证码,连续点击【付款】按钮,订单状态为待充值,支付状态为支付成功,过15分钟左右,充值状态变为充值成功

7、不同充值面额,不同支付金额(0.01,0.1,1,100,49.96)来测试

8、不同运营商的手机号码(移动、联通、电信)来充值

9、 篡改充值面额和支付金额后,在支付界面取的支付金额是否为405平台配置的销售价格?支付金额正确应该是显示平台配置的销售价格。操作步骤:先打开充值链接获取session,关掉页面,点击篡改充值面额和支付金额的链接,进入支付界面,检查支付金额是否为平台配置的销售价格。

10、检查在充值前是否有判断实际支付金额与平台配置销售价格一致?若不一致,则充值失败,失败原因:支付价格异常,错误的支付价格,已支付价格为:XXX,405平台订单号为YYY。操作步骤:做一笔待充值待支付的记录,修改数据库支付流水表的payment_amt支付金额改小0.01元payment_status支付状态改为支付成功,等补充值的定时任务后,查看手机充值话费记录表的充值状态为充值失败,失败原因是支付价格异常,错误的支付价格,已支付价格为:1.00,平台订单号为:MPF2016010716313396。

11、首页分享和非首页分享,首页可以正常分享;非首页分享后,朋友点击进去,会提示:非法请求。注:以上场景都要查数据库存入的数据是否正确(特别是要注意金额和状态)?查看日志参数传送是否正确?关联模块“充值流水信息查询”和“支付流水信息查询”对应的状态显示是否正确?注:区分IOS和安卓的手机来测试

五、充值面额和流量包的显示区分话费和流量

1、输入有效手机才可用,且要话费经销商报价里的充值面额与sys_params表对应经销商配置了默认话费充值面额一致,才显示该充值面额。

2、输入无效手机,给出提示:暂不支持该手机号码

3、输入有效手机后退清除,面额或流量呈不可用。

4、要清缓存,再重新加载面额或流量,来走正常的充值流程注:区分IOS和安卓的手机来测试

六、异常类的测试

1、当接入者被锁定,充值界面提示:接入商账号异常!

2、当接入者默认值有300元面额,在经销商报价模块没有配置该面额的销售价格,在充值界面里选中该面额,充值界面应提示:该商品暂时缺货。

七、其他要注意的事项

1、要留意每笔交易更新到数据库表的相关时间是否正确

2、定时任务存在统计时间段的,要留意统计时间段的边界值

3、定时任务存在释放库存数的,要留意是否会重复释放?释放的累计数是否大于总数?(活动:话费抢购)

4、存在配置文件设置固定值的,要设置不同的数值来验证。

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

在这里插入图片描述

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

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

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

相关文章

第 2 章 线性表 (设立尾指针的单循环链表(链式存储结构)实现)

1. 背景说明 循环链表(circular linked list),是另一种形式的链式存储结构。它的特点是表中最后一个结点的指针域指向头结点, 整个链表形成一个环。由此,从表中任一结点出发均可找到表中其他结点 。 2. 示例代码 1) status.h /* DataStruct…

Parsing error: The keyword ‘const‘ is reserved

Parsing error: The keyword ‘const’ is reserved 在文件.eslintrc.js中 因为eslint默认审查的es5,需要明确让他审查es6.,所以需要配置parserOptions 配置如下: module.exports {"plugins": ["prettier"],"rules": {…

【自学开发之旅】Flask-标准化返回-连接数据库-分表-orm-migrate-增删改查(三)

业务逻辑不能用http状态码判断,应该有自己的逻辑判断。想要前端需要判断(好多if…else),所以需要标准化,标准化返回。 json标准化返回: 最外面:data,message,code三个字段。 data:返回的数据 co…

【Unity基础】2.网格材质贴图与资源打包

【Unity基础】2.网格材质贴图与资源打包 大家好,我是Lampard~~ 欢迎来到Unity基础系列博客,所学知识来自B站阿发老师~感谢 (一)网格材质纹理 第一次接触3D物体的话,会觉得好神奇啊,这个物体究竟是由什么组…

教育志愿者的初心与担当

近日,有报道显示,在全球范围内,大约有6000万的儿童由于各种原因无法接受基础教育,其中非洲大陆的教育贫瘠现象尤为显著。然而,在这片土地上,有一位中国年轻志愿者Lily Zhu,以一种富有创新精神的…

Mysql中in和exists的区别 not in、not exists、left join的相互转换

文章目录 1. in 介绍1.1 in中数据量的限制1.2 null值不参与in或not in,也就是说in and not in 并不是全量值,排除了null值1.3 in的执行逻辑 2. exists介绍2.1 exists not exists 是全量数据2.2 exists的执行逻辑 3. 小表驱动大表的好处4. in、not in、e…

图像噪声--添加噪声

椒盐噪声 椒盐噪声就是给图片添加黑白噪点,椒指的是黑色的噪点(0,0,0),盐指的是白色的噪点(255,255,255),通过num来控制噪声多少,值越大添加的噪声越多,图像损坏的更加严重。 void add_salt_pepper_noise(Mat& src,Mat& …

Mojo-SDK详细安装教程

Mojo-SDK安装 运行环境:windows11wsl2(ubuntu1804) 截至20230909,windows,mac系统暂时不支持 step1: Install VS Code, the WSL extension, and the Mojo extension. step2: Install Ubuntu 22.04 for WSL and open it. step…

Vue el-table 重置按钮设计模板

vue 文件演示模板 <template><el-button icon"el-icon-refresh" size"large" click"resetFunction">重置</el-button><el-tableheight"450"v-loading"loading":data"dataList":row-key&quo…

U盘插上就让格式化是坏了吗?数据怎么恢复

U盘插上就让格式化是坏了吗&#xff1f;当您遇到U盘插上后提示需要格式化的情况时&#xff0c;不要慌张。这种情况并不一定意味着U盘已经坏了。下面我们一起来了解下如何恢复里面的数据&#xff0c;并解决U盘提示格式化的问题。 U盘一插上就提示格式化是什么原因 许多人可能会有…

个人微信多账号聚合管理如何实现?

在日常工作中&#xff0c;您是否会遇到以下问题&#xff1a; 微信号多&#xff0c;需反复切换设备及账号&#xff0c;工作效率低。 无法快速响应客户消息&#xff0c;客户体验感差。 无法随时掌握员工与客户沟通情况&#xff0c;员工沟通质量难以控制&#xff0c;管理难。 员…

Spring系列文章:面向切面编程AOP

一、代理模式 1、代理模式使用场景引入 ⽣活场景1&#xff1a;⽜村的⽜⼆看上了隔壁村⼩花&#xff0c;⽜⼆不好意思直接找⼩花&#xff0c;于是⽜⼆找来了媒婆王妈妈。这 ⾥⾯就有⼀个⾮常典型的代理模式。⽜⼆不能和⼩花直接对接&#xff0c;只能找⼀个中间⼈。其中王妈妈是…

OpenCV 11(图像金字塔)

一、 图像金字塔 **图像金字塔**是图像中多尺度表达的一种&#xff0c;最主要用于图像的分割&#xff0c;是一种以多分辨率来解释图像的有效但概念简单的结构。简单来说, 图像金字塔是同一图像不同分辨率的子图集合. 图像金字塔最初用于机器视觉和图像压缩。其通过梯次向下采…

shell知识点复习

1、shell能做什么&#xff08; Shell可以做任何事(一切取决于业务需求) &#xff09; 自动化批量系统初始化程序 自动化批量软件部署程序 应用管理程序 日志分析处理程序 自动化备份恢复程序 自动化管理程序 自动化信息采集及监控程序 配合Zabbix信息采集 自动化扩容 2、获取当…

淘宝双11数据分析与预测课程案例中(林子雨)错误点总结

问题一&#xff1a;可视化代码中男女买家各个年龄段对比散点图中数值不显示以及坐标不正确问题如下图 解决方法&#xff1a; 1修改坐标 2修改数值 修改后散点图 问题二&#xff1a;各省份的总成交量对比中地图显示不出来 有时间再写

海量小文件传输对于企业选用文件传输软件的重要意义

在当前的商业环境中&#xff0c;数据具有极其重要的作用&#xff0c;是企业竞争的核心要素。随着互联网、物联网和云计算等技术的快速发展&#xff0c;数据的类型和规模变得越来越多样。在这其中&#xff0c;海量小文件作为一种普遍而重要的数据形式&#xff0c;扮演着连接信息…

新知同享 | Mobile 开发轻松跨屏,高效构建

谷歌致力于帮助开发者 更快、更轻松地打造高质量的移动体验 一起来看 2023 Google 开发者大会上 Mobile 开发值得重点关注的成果与更新 了解如何提高平台及应用质量 提升开发效率 使多设备开发体验更流畅 实现轻松跨屏&#xff0c;高效构建 精彩大会现场一览 用户对跨屏幕体验…

在k8s中创建ConfigMap的四种方式与初识helm包管理工具

非敏感数据&#xff0c;比如应用的配置信息&#xff0c;则可以用ConfigMap 创建configmap四种方式 &#xff08;1&#xff09;通过--from-literal&#xff1a; kubectl create configmap myconfigmap --from-literalconfig1xxx --from-literalconfig2yyy 每个--from-literal…

Revit SDK 介绍:Ribbon 界面

前言 Revit 通过 API 将完整的 Ribbon 做了保留&#xff0c;同时这些菜单按钮也可以和相应的命令绑定。 内容 运行效果如下所示&#xff1a; 菜单特写&#xff1a; Ribbon Sample 整体是 API 暴露出来的一个 RibbonPanel&#xff0c;对应的接口&#xff1a; namespace Au…

dll文件反编译源代码 C#反编译 dotpeek反编译dll文件后export

目录 背景下载安装dotpeek导入dll文件export导出文件参考 背景 项目合作的时候&#xff0c;使用前人的或者其他部门dll文件直接在机台运行&#xff0c;会出现很多问题&#xff0c;逻辑&#xff0c;效率等等&#xff0c;此时我们可以选择对他们的代码进行反编译和重构&#xff…