测试思维

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

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

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

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

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

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

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

第三步:针对具体功能,寻找每个输入项和步骤,从以下三个角度来分析测试点 。
  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)安全

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

 

 posted on 2021-06-01 17:29  Tricyling  阅读(758)  评论(0编辑  收藏  举报
  • 功能测试,自动化测试,性能测试,笔记面试、简历相关、职场晋升的问题欢迎交流

  • 个人工作微信:ningmengpyn