软件测试的BUG定位

时间:2021-03-27 14:27:57

bug定位即有足够的“证据”去证明DOV(开发人员)的代码存在问题,不是单凭自己认为是bug就是bug,最好可以定位到DOV的某行代码,某个函数的问题,最好保留日志截图并且可以保证重现。

定位顺序:UI --> 中间件 --> 后台 -->代码 -->database

一.web前端的bug分析定位。

  1. 测试内容:页面布局、用户功能、易用性、兼容性
  2. 测试方法:模拟用户输入,在浏览器页面上进行输入、点 击等行为
  3. 定位之前需要思考的问题:是否是浏览器设置问题?是否是浏览器cache的问题? 在其他浏览器上是否可复现? 用其他数据是否可以复现? 是否是cookie相关的问题? 是否正确发出了请求? 是否得到了正确的应答? 是否是网络原因? 是否是跨域问题? 是否是程序版本的问题?
  4. 常见bug:浏览器兼容性,浏览器按钮操作,字符编码,页面跳转,跨域,性能

二.后台的bug分析定位

  1. 测试内容:逻辑流、数据流、策略、接口、性能      
  2. 测试方法:输入条件构造,网络通信包(驱动、桩、真实的上下游模块),数据文件,配置文件(包括词表,黑白名单等),共享内存,输出检查,网络通信包,数据文件,日志(尤其是异常日志),监控:系统监控:cpu、句柄、IO、内存模块级监控:内存结构体信息,调试DEBUG,JPDA打断点
  3. 常见bug:自顶向下排查(从系统入口模块开始),是内部逻辑问题还是下游数据问题?是否是某些配置下发生的问题?日志中是否发现线索?系统资源情况中是否发现线索?是否是边界值、并发等问题?下游模块是否交互正常?是否是多线程下的问题?是否是大压力下的问题?是否是不同模块间接口的定义不一致?是否和服务器软件版本及设置有关?自底向上排查(从系统末端模块开始),最底层的模块是否正常收到了请求?是内部逻辑问题还是上游请求问题