作为一名测试工程师,你知道“微信红包”怎么测试吗?

news/2024/11/23 4:03:21/

测试思维

测试任何事物的测试思路可以总结如下:

第一步:梳理产品的核心业务流程:明白这是个什么项目,实现了什么业务,以及是怎么实现的?

这个步骤一般是参考公司的需求文档来的,如果产品提供需求文档的同时提供了业务流程图,可以遵循流程图来梳理;如果产品没有提供流程图,就需要测试人员根据需求的理解自己画出流程图,达到梳理业务的目的。

第二步:根据流程进行模块细分,然后针对每个功能模块进行详细的测试点设计和提取。

这个单个功能的测试点提取要覆盖一下几个方面:

正常功能验证:优先覆盖正常的业务流程和功能验证,这其实也是单个功能的冒烟测试。冒烟测试先行,如果不通过,可以直接停止测试等开发修复后继续测试。
异常功能验证:为了更加贴近用户的使用产经,我们也要验证各种异常的场景,故意操作导致出错,检查系统的反馈和提示,保证用户操作失误的情况能够得到系统的友好指示。

因为有很多地方的操作都有可能会导致系统异常和抛错,所以为了不漏测,我们需要找出所有可能导致异常的输入项和选项。所以就到了第三步:

第三步:针对具体功能,寻找每个输入项和步骤,从以下三个角度来分析测试点 。
  1. 长度,数据类型,必填项,重复
  2. 需求的约束条件 + 隐形需求
  3. 功能之间的交互

这其中就需要用到一些用例的具体设计方法了,比如场景法,等价类法,边界值法,错误推测法等等

第四步:考虑非功能测试点,包括界面、易用性、兼容性、安全性、性能压力

微信红包功能的测试点

基于上面的测试思路,我们可以分析得出“抖音直播功能”测试点如下:

一、梳理微信发红包的业务流程如下:

点开联系人---> 点击红包 ---> 输入金额---> 输入红包描述---> 选择支付方式塞钱进红包---> 确认支付---> 领取红包

**冒烟测试:**选择联系人点击红包,输入正常的红包金额和描述,选择零钱支付确认发送成功,并收到可以正常领取。

然后我们再进行各个功能模块的具体细化。

红包金额

从长度、数据类型、必填项等几个方面来考虑:

  1. 长度:

有效:0.01~200,取边界值的测试数据为:0.01,200

无效:小于 0.01,取值 0;大于 200,取边界值为 200.01,检查是否有友好的报错信息

  1. 数据类型:

有效为数字

无效非数字,可以是从字母、字符、中文里选择一个代表测试

  1. 必填项:输入金额为空,检查是否有报错信息并友好
  2. 挖掘隐形需求,小数点不能超过 2 位,

有效:小数点不能超过 2 位

无效:超过两位小数

其他:是否支持复制、粘贴功能;以及多次发送功能是否正常

红包描述

描述默认值:恭喜发财 大吉大利,检查是正常的;

描述的长度有要求,最多为 25 个字符,所以我们可以从以下角度来考虑:

长度:最多为 25 个字符

有效:范围为 0~25,选取边界值作为测试数据,0 和 25

无效:大于 25,选择边界值 26 作为测试数据

数据类型:

  1. 描述里可以输入汉字、英文、数字、字符(空格),符号等
  2. 表情:可以选择表情进红包描述,测试点覆盖如下:

a、按钮可以点击

b、表情包的类型:保存的动图和动图;自拍表情;系统自带;下载表情包

c、增删改操作

d、发送成功,显示正常

塞钱进红包的支付方式

零钱 : 选择零钱进行红包支付

有效:红包金额 <= 零钱,可以发送成功

无效:红包金额 > 零钱,会有友好的提示信息

银行卡:选择银行进行红包支付

有效:

  1. 已经添加的银行卡,并且金额 <= 银行卡余额;
  2. 新添加的银行卡:可以绑定成功; 金额 <= 银行卡余额

无效:

  1. 已经添加的银行卡,金额 > 银行卡余额,会有友好的提示信息
  2. 新添加的银行卡,金额 > 银行卡余额,会有友好的提示信息
  3. 卡被冻结等无效状态,可以提示友好的信息
零钱通:西安则零钱通进行红包支付

有效:红包金额 <= 零钱,可以发送成功

无效:红包金额 > 零钱,会有友好的提示信息

确认支付

输入了金额和描述,以及选择好对应的支付方式后,需要输入密码等认证信息进行确认支付。这里可以通过一下方式进行确认支付:

密码确认:输入支付密码进行确认

有效:正确的密码,支付可以成功,并且以上支付方式里的渠道可以进行正确的扣款

无效:错误的密码,支付失败,并且给出友好的提示信息

刷脸:选择刷脸方式进行支付确认

有效:正确的刷脸识别,可以支付成功,并且以上支付方式里的渠道可以进行正确的扣款

无效:错误的脸部识别,支付失败,并且给出友好的提示信息

指纹:选择指纹方式进行支付确认

有效:正确的指纹识别,可以支付成功,并且以上支付方式里的渠道可以进行正确的扣款

无效:错误的指纹,支付失败,并且给出友好的提示信息

领取红包

发送了红包之后,我们还要进行红包领取的测试,确认是否可以正常领取,并做了基本的权限限制。

  1. 接受者领取红包:

a、领取之前,可以查看红包的具体信息,金额,留言等,显示正确;

b、领取成功,会存到零钱,并且新增的金额 = 发送金额;

c、领取之后,红包状态会变灰,不能再领取,可以查看信息;

  1. 发送方领取

a、查看红包的具体信息,金额、留言等信息,显示正确

b、不能进行领取,等待对方领取

  1. 24 小时之后再确认红包状态

a、超过 24 小时未领取,金额退回,到账到零钱;提示红包过去,无法再查看余额和项目信息

b、取过之后超过 24 小时,无法再查看金额等详细信息

红包记录

发送红包之后,领取完成,可以点击右上角查看红包记录,并可以选择年份进行查看,检查信息显示正确;

取消红包

测试取消了之后,这个红包发送失败。但是可以再次进行红包发送。

APP 专项测试

覆盖了基本业务功能测试之后,作为 APP 的测试,我们一定还要考虑到 APP 的专项测试,比如 APP 自身的安装、卸载、升级,消息的推送等;对于红包支付功能,我们需要关注下“中断测试”和“网络测试”!

支付中断:

支付过程中如果出现一些手机的中断行为,那么红包会不会受到影响以及是否可以正常继续。常见的中断类型有:

电话中断

网络中断

闹钟中断

插拔耳机中断

保证这些中断发生的时候,红包不会影响发送,更加不会导致一些异常情况发生,比如 APP 突然 crash 和 ANR 的情况;

网络测试:

验证各种网络类型:2G、3G, 4G,5G,wifi 下都可以正常发送;

进行网络切换,功能正常;

弱网测试下功能正常:

  1. 不会重复进行支付,或者发送多个红包
  2. APP 不会闪退 崩溃,而且页面提示友好;

微信红包的非功能测试点

测试完以上的功能测试点之后,我们还需要验证一些非功能测试点,主要包括以下几个方面:

1)界面

验证界面的美观,排版和错别字等。

2)兼容性

a、考虑测试手机移动端的兼容,比如手机型号

b、考虑系统版本的兼容,主流的系统版本需要测试覆盖

c、考虑不同屏幕大小及分辨率的兼容性测试

3)易用性

测试站在用户的角度考虑用户体验,使用是否方便等。

4)性能

比如发送多个红包,给多个好友发送等,一般需要借助工具或者代码进行测试。

5)安全

验证敏感信息是否加密,是否可以篡改;通过一些工具进行安全扫描,检查是否有安全漏洞;或者采用一些其他的手段进行专门的安全测试。


http://www.ppmy.cn/news/981029.html

相关文章

linux 学成之路(基础篇)(二十三)MySQL服务(下)

目录 一、用户权限管理概述 二、用户权限类型 三、用户赋予权限 四、删除权限 五、删除用户 一、用户权限管理概述 数据库用户权限管理是数据库系统中非常重要的一个方面&#xff0c;它用于控制不同用户访问和操作数据库的权限范围。数据库用户权限管理可以保护敏感数据和…

Asp.Net 使用Log4Net (SQL Server)

Asp.Net 使用Log4Net (SQL Server) 1. 创建数据库表 首先&#xff0c;在你的SQL Server数据库中创建一个用于存储日志的表。以下是一个简单的表结构示例&#xff1a; CREATE TABLE [dbo].[Logs]([Id] [INT] IDENTITY(1,1) PRIMARY KEY,[Date] [DATETIME] NOT NULL,[Thread] …

JSON格式Python,Java,PHP等封装获取淘宝商品详情描述数据API

淘宝是一个网上购物平台&#xff0c;售卖各类商品&#xff0c;包括服装、鞋类、家居用品、美妆产品、电子产品等。要获取淘宝天猫商品详情描述数据&#xff0c;您可以通过开放平台的接口或者直接访问淘宝天猫商城的网页来获取商品详情详细信息。以下是两种常用方法的介绍&#…

pacman 学习笔记

Pacman 软件包管理器是 Arch Linux 的一大亮点。它将一个简单的二进制包格式和易用的构建系统结合了起来。Pacman 的目标是简化对软件包的管理&#xff0c;无论软件包是来自官方软件仓库还是用户自己创建的软件包。 Pacman 通过和主服务器同步软件包列表来保持系统是最新的。这…

activemq消息中间件

ActiveMQ消息中间件详解 下载地址&#xff1a;https://activemq.apache.org/activemq-5015009-release 1、MQ的产品种类 1.1、消息中间件的特性/共同特性/共同维度 Kafka&#xff08;大数据专用、由java/scala编写&#xff09; API发送和接收MQ的高可用性MQ的集群和容错配置…

【简单认识MySQL的MHA高可用配置】

文章目录 一、简介1、概述2、MHA 的组成3&#xff0e;MHA 的特点4、MHA工作原理 二、搭建MHA高可用数据库群集1.主从复制2.MHA配置 三、故障模拟四、故障修复步骤&#xff1a; 一、简介 1、概述 MHA&#xff08;Master High Availability&#xff09;是一套优秀的MySQL高可用…

【时间复杂度】

旋转数组 题目 给定一个整数数组 nums&#xff0c;将数组中的元素向右轮转 k 个位置&#xff0c;其中 k 是非负数。 /* 解题思路&#xff1a;使用三次逆转法&#xff0c;让数组旋转k次 1. 先整体逆转 // 1,2,3,4,5,6,7 // 7 6 5 4 3 2 1 2. 逆转子数组[0, k - 1] // 5 6 7 4 3…

云原生网关部署新范式丨 Higress 发布 1.1 版本,支持脱离 K8s 部署

作者&#xff1a;澄潭 版本特性 Higress 1.1.0 版本已经 Release&#xff0c;K8s 环境下可以使用以下命令将 Higress 升级到最新版本&#xff1a; kubectl apply -f https://github.com/alibaba/higress/releases/download/v1.1.0/customresourcedefinitions.gen.yaml helm …