测试基本功 |  定位Bug的要求和方法

2018-07-23  本文已影响49人  Root_123

一、要求: 

首先确定是界面显示问题还是功能问题,

    如果是界面问题,如贴图错误,文字错误,样式错误,则需要截图

如果是功能问题:

    控制台的问题至少定位到:www的问题还是数据库问题,如果是www问题至少要定位到是前端还是后端问题;如果是数据库问题至少要定位到是服务端接口问题还是中间件问题

    客户端的问题至少定位到:哪个dll模块或者逻辑出的问题

    服务端的问题至少定位到:什么接口出的问题,导致数据库哪里不对

二、方法

先说我们领导给我们讲的经验,主要针对于大数据报表项目:

1,Web项目的特点:portal+server、portal server,

2,Web项目开发分层:前端UI 即表示层、业务逻辑层、数据访问层

3,Web项目测试分层:前端UI合理性验证、前端业务逻辑验证、后台接口数据传递、调用,模块间关联(涉及表关联):对DB进行数据完整性、一致性验证,

4,Web项目bug定位分析方法:

1)抓包分析

2)后台日志分析

3)查询DB分析

4)排除法分析

抓包分析

常见工具:wireshark、Fiddler

Wireshark:能将客户端与服务器相关业务场景融合在一起,通过抓包分析API接口之间逻辑调用、数据传递,功能模块数据的关联性、错误处理;能准确分析定位Bug供开发参考。

Fiddler:能模拟Android客户端/Web 平与服务器的http/https请求,监视,设置断点,修改输入/输出数据。本地构造测试桩结合业务场景模拟调用API获取response

后台定位

排除掉前端的问题之后,需要逐层分析,从后台服务来进行分析定位,当然,定位分析问题的前提条件是,需要对业务流程非常清楚,清楚各模块之间的交互;假如后台服务的平台为linux,则需要对linux的一些常用命令进行掌握,采用tail -f 、 more , grep ,等命令来跟踪日志,最终定位到具体模块的错误信息,或者接口请求、返回结果

查询DB验证

适合场景

1)Web前端内容add或update, 需检查后台DB是否也add或update

    例:天猫 下订单,前端已表示 订单OK,但后台DB未记录

              天猫  取消订单,前端已表示 取消OK,但后台DB实际保留这条订单

              天猫  变更订单,前端已表示 变更OK,但后台DB实际未update

2) Web前端与后台DB的一致性验证

排除法分析

1、前端定位分析:

是否是浏览器设置问题?

是否是浏览器兼容性问题?

是否是cookie相关的问题?

是否正确发出了请求?

是否得到了正确的应答?

是否是网络硬件原因?

是否是前后台接口不一致问题?

2、后台定位分析:

自顶向下排查(从系统入口模块开始)

是内部逻辑问题还是下游数据问题?

是否是某些配置下发生的问题?

日志中是否发现线索?

是否是边界值、并发等问题?

是否是不同模块间接口的定义不一致?

是否和服务器软件版本及设置有关?

自底向上排查(从系统末端模块开始)

最底层的模块是否正常收到了请求?

是内部逻辑问题还是上游请求问题

注:网上看到的比较全面的文章:

Web测试中定位bug方法 - 51Testing软件测试网

上一篇下一篇

猜你喜欢

热点阅读