如果开发知道这是bug,但是不承认是自己模块的bug,这个时候测试该怎么办?

首先我们要知道bug大多存在哪些模块
一般来说bug大多数存在于3个模块:
1、前台界面,包括界面的显示,兼容性,数据提交的判断,页面的跳转等等,这些bug基本都是一眼可见的,不太需要定位,当然也不排除一些特殊情况,本身数据传过来的时候就有问题,所以显示会出问题的情况(这个后面会说到)。
2、后台程序,包括前台调用的接口,中间层缓存和转发数据,定时任务脚本异步处理数据,程序之间的相互调用等等,而这些bug往往都是不可见的,有可能在功能上体现,也有可能隐藏的深处不易发现,这时候就要通过一些辅助工具以及人工的判断去定位了。
3、数据库,包括表中缺少字段,字段定义错误,字段长度限制,数据重复等等,这些bug需要通过数据库工具以及一些基本的数据库查询语句来定位,当然前提是要对每个表,每个字段甚至每一个值代表什么意思有一定的了解(一些常用的重要的表,字段,值就可以了)。

定位问题有一个总的思路,而这个思路是和数据的走向一致的。大致是这样:
用户层面问题 -> 前端(Web页面/软件界面) -> 中间件 -> 后台 -> 代码 -> 数据库

定位bug的步骤

一、分析测试环境
检查测试环境,看测试环境是否出现问题

二、分析是否为前端bug
测试过程中,怎么判断是前端Bug还是后端Bug?可以通过抓包工具来进行抓包分析。
1.请求接口URL是否正确:
如果请求接口URL不正确,为前端Bug。
2.http请求中的参数是否正确:
如果http请求中的参数不正确,为前端Bug。
3.如果接口URL和参数都正确,查看响应内容是否正确:
如果这种情况下响应内容不正确,则为后端Bug。

三、分析是否为后端bug

1.报错日志分析
连接测试服务器查看日志,看是程序处理到哪一步有问题,
2.数据库分析
看是否连接的数据库不对,亦或是超过数据库字段限制的长度等等
3.查看缓存(如Memcache、apc、redis等缓存)是否正确


比有一个提现余额的功能,实际提现金额到账了,但余额却没有扣除。首先要对提现功能做一个拆解
1、前台发起提现申请
2、后台接受申请后冻结提现金额
3、定时任务处理提现(调用第三方支付转账接口)
4、接受到转账成功回调
5、将余额减去提现冻结的金额
6、前台余额展示提现后的余额
因为实际提现金额到账了,那么基本可以排除3和1了,然后通过猜想觉得最有可能出问题的是4,就是没有收到转账成功的回调,可以查看后台日志是否收到回调。如果没收到回调,那么基本就是回调地址不对或者网络超时等错误,问题就定位到了。
如果收到回调了,那么最有可能的就是余额未扣除提现冻结金额,那么就是2和5,对于2来说可以查数据库是否提现金额被冻结。
如果未冻结那就是步骤2出错了,如果冻结了,继续查5余额是否扣除了提现冻结金额(这个可能需要开发配合查程序逻辑了)。
如果5也没有问题,那么剩下的可能性只有6了,再对6进行验证。如果还没问题可能就是其他异常导致的,需要更深入去思考有没有遗漏的点或者数据库上的特殊性导致的。

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值