短信通知测试点
当我们测试短信通知时要关注什么,只需要在相应流程校验一下短信是否成功发送就可以了吗。通常在一个大项目中,短信是最不起眼的一部分,有时候甚至项目进行到中后期才给到短信需求,但这并不意味着测试人员对短信的质量要求可以降低,短短一条短信也有很多可以深入思考的地方。
一、覆盖各种业务短信场景
这是最基础的部分,大部分测试可能只覆盖了这部分,比如客户申请通过的短信,客户申请被拒的短信,待客户签署合同的短信。可以参考5w2h分析法,为什么要发送短信,什么时候发送短信,向谁发送短信,发送什么短信内容……如果产品连在什么场景需要发送什么短信都不明确,那这个需求可以驳回去了。
二、检查发送对象
哪些是发给客户经理,哪些是发给客户,哪些是发给客户经理和客户主管的。当客户经理和客户主管是同一人时,是否只发一条短信,避免重复发送。
三、检查发送内容
根据短信模板检查短信内容。测试环境怎么检查短信呢,有的项目可能会真实发送短信,有的需要上短信平台,有的可能会把短信落库,或者只能在日志里查看,总有办法,多和开发沟通。
还有短信里填充的字段,有些可能是直接获取的,有些是需要加工处理的,针对需要处理的字段需要进一步分析并覆盖。
四、发送时机
满足什么条件下触发该短信,比如客户还款到期前N天、逾期N天等,需要验证是否仅在满足这些条件的情况下才触发短信,注意边界值。
五、异常
以上三点是产品验收时也会关注的,作为测试人员,我们的价值是要会去分析短信数据来源,以及可能会出现的各种异常情况。
1、数据来源是否可靠
注意手机号和短信内容如何获取的,手机号是从微信获取的手机号还是客户申请时填写的手机号,结合业务具体分析哪种更合适;申请金额是客户提交的申请金额还是入库之后的申请金额,如果是数据库的字段,单位是否需要转换。
为什么要测试人员分析,因为通常产品给的需求并不会具体到哪一个步骤获取的手机号,开发人员很可能基于自己的理解实现。
2、数据获取不到如何处理
该数据是否有可能为空,获取不到值时程序如何处理,不能发送包含null的短信给用户吧。
3、失败处理
需要记录短信发送结果,发送失败有重发机制,失败要有预警等。
4、发送节点
这是最容易被忽视的,当系统正常时不会触发到该异常,需要结合代码或者直接跟开发沟通确认,比如客户提交申请的短信,如果收到客户提交的申请就先发送了短信再入库,入库失败了怎么办,所以短信发送节点在不同的代码行里,效果是不同的。