01.业务测试

 

  1.1行业的动态理解,金融相关的新闻、政策要持续关注

 

  1.2竞品的分析,研究竞品的逻辑交互、业务流程,和我们的产品是否有差异,差异在哪,为什么会有这种差异,哪种更合理更好

 

  1.3对测试人员而言,需求的最终输入是PM,我们在做需求理解时,除了理解prd,交互稿等等需求设计文档以外,更重要的一点是理解需求对应的业务背景。

 

  在缺陷类型中有一类错误叫做需求错误,就是指产品存在逻辑上的漏洞、业务上的漏洞,测试人员要发现这种错误,前提就是需要对需求的业务背景进行了解,为什么这个需求会存在?解决了什么问题?

  比如一个新需求要求对A页面的某金额进行修改,如果你不理解产品的业务,会认为页面A修改完即可。

 

  但是如果你带着业务去思考,会发现页面B也存在同类业务或者依赖业务,从而可以提出业务相关的问题,避免问题产生

 

02.功能测试

 

  交互逻辑检查

 

  a.业务流转是否正确,接口调用逻辑是否正确。

  b.数据管理权限,如系统管理员是否可以修改用户提交内容

  c.用户权限有严格限制

  d.用户提交资料后,涉及审批制。审批流程机制是否健全,如节点回滚等。

 

  页面之间的数据读取

 

  a.页面取数据库的值

  b.值的展示处理逻辑,如小数转换、单位换算、null值、金额溢出规避等

  c.值的计算,应考虑多位小数、边界值(1、0、-1等)的情况。

  d.密码、手机、身份证号、电话、邮箱格式限制。

  e.百分占比计算,如1/3情况,占比之和是否为100%

  f.数据缓存机制

  g.数据job执行逻辑

 

  一般性检查

 

  a.新增、修改、删除是否有提示,提示风格是否与产品提示风格一致

  b.菜单层级

  c.导航指示清楚

  d.加载动画是否合理,当响应时间较快时是否取消动画加载

 

03.安全性测试

 

  敏感数据本地可破解

  检查是否在本地保存用户密码,无论加密与否

  检查敏感的隐私信息,如聊天记录、关系链、银行账号等是否进行加密

  检查是否将系统文件、配置文件明文保存在外部设备上

  部分需要存储到外部设备的信息,需要每次使用前都判断信息是否被篡改文件权限

  检查App所在的目录,其权限必须为不允许其他组成员读写

 

  网络传输

 

  检查敏感信息在网络传输中是否做了加密处理,重要数据要采用TLS或者SSL。http请求默认是明文的,如果安全验证和加密机制存在漏洞,通过网络嗅探扫描,很容易被猜到和模拟请求,也可能被注入。

 

  Android组件权限保护

 

  禁止App内部组件被任意第三方程序调用。若需要供外部调用的组件,应检查对调用者是否做了签名限制

 

  升级

 

  1.检查是否对升级包的完整性、合法性进行了校验,避免升级包被劫持。

  2.升级后的数据检查,避免出现升级后密码失效等。

 

  应用自身安全性

 

  对某个应用进行逆向,看反编译后的代码有没有敏感信息暴露。反编译后对代码修改,插入劫持代码后重新打包,如果存在这种漏洞,对用户和开发者都构成极大的威胁。

 

  请求传输

 

  如H5页面数据分享,是否将用户session也分享出去了。

 

04.其它通用类测试点

 

  如性能测试、易用性测试、兼容性测试、安全性测试、稳定性测试。针对APP,还需独有特点进行专项APP测试,如:流量测试、电量测试、弱网络测试、环境干扰测试等。

 

  发版及项目回顾

 

  建立严谨合理的上线发版流程,确保产品顺利上线;及时收集用户使用反馈,供产品改进;同时,QA需将各个阶段的执行数据进行有效分析,发现问题,提出改进措施,并跟进改进结果。