bug定位总结

bug定位基本流程:

bug定位核心方法:

  1. http抓包:  先确认http请求是否被发送
    1. App: Fiddler, charles, 云代理,
    2. 浏览器: 开发者工具, firebug等

    抓包的时候要注意依次辨别domain, path和请求参数的值,是否正确

  2. 查看日志:
    1. 应用运行日志: logs/appname/error.log, exception.log
    2. 应用启动日志: usr/local/tomcat|dubbo|jar/springboot/logs/目录下
    3. 查看实时日志: tail -f *.log
    4. 根据关键字搜索日志: grep key *.log

前端常见问题:

  1. 功能bug
  2. web: js缓存没有更新
  3. ajax请求参数拼装错误
  4. 等等

cap常见问题:

  1. URL格式非法: 返回http 400
  2. Api在缓存在不存在http 405
  3. Ip限制加入黑名单: cap 140
  4. 系统参数校验失败: cap 101
  5. 熔断: cap 154

所有的cap错误类型, 请参考错误码 或者 ErrorCodeEnum.java

dubbo接口排查:

  1. 从dubbo admin中查看应用和接口是否有提供者和消费者
  2. 核对调用方与dubbo提供方的dubbo接口版本是否一致

后台模块常见问题原因:

  1. 部署错误的代码分支
  2. 应用没有被启动, 或者启动报错了
  3. cdiamond新配置没有添加,或者值错误
  4. 服务器etc/caocao/app/config.properties配置值错误或者遗漏
  5. 数据库变更脚本没有执行
  6. kafka topic没有被添加
  7. 等等

终极定位bug方法:

  1. 了解系统架构, 系统架构图: 整体系统架构
  2. 代码调试: 本地调试(客户端,服务端),远程调试

如何提出高质量bug

发现bug是测试人员必须具备的能力,不管在什么公司,测试人员在执行测试任务的时候,发现bug和提bug,以及跟踪Bug是必要的工作。如何提出高质量的bug,是体现测试人员水平的重要标志。从功能测试人员,到测试开发,高级测试开发等,都避免不了与bug打交道。可是现在也存在这么一种现象:测试人员提的bug质量不高,开发人员看不明白。于是就来找测试人员,来解释这个bug是怎么回事,如此来回折腾浪费工作时间,在跨部门协作的时候,这样的情况尤其严重。

测试人员提bug质量不高,主要表现在如下几个方面:

(1)bug表述不清,只有一句话,介绍bug是什么,然后没有其他的说明。

(2)不提bug,发现问题直接告诉开发人员,在工作交流平台上不断讨论bug。

(3)发现bug的场景没有保留,重现成本较高。

针对上面的各种情况,我们测试人员要不断地提高相应的能力,提出高质量的bug。如何提出高质量的bug呢?

一,熟悉Bug管理工具

每个公司不管规模大小,都应该有bug管理平台,如jira,禅道,teambition,或是公司自主研发的项目管理平台;只要我们通过相应的平台来管理项目,bug等,要想更好地提bug必须先全面了管理平台的功能。很难想象,如果你相应的管理平台都不会用,如何更好的辅助测试呢?

二,准确地给bug定级

根据bug的影响,每个公司会定不同的bug分级标准。如p0,p1,p2,p3,或是致命,严重,一般,低级与建议,或者A,B,C,D。作为测试人员必须了解相应的分析标准,在发现bug后才能准确地给bug定位,从而影响bug的修改优先级。

(更多…)