测试基础:Bug管理那些事_20160910

一、bug由来

虫子爬进主机引发继电器短路,致使机器故障。真正的缺陷是:主机散热孔少装了块金属丝,这样才能防止虫子爬到主机。 数据库

二、什么是bug?

bug是缺陷的一种表现形式,而一个缺陷是能够引起多种bug的。软件测试,为了发现软件中的错误而运行软件的过程。 浏览器

  • Bug评判点
  • 1)软件未达到客户需求文档 的功能和性能
  • 2)软件出现客户需求不能容忍的错误
  • 3)软件的使用未能符合客户的习惯和工做环境(易用性兼容性)
  • 4)软件超出需求文档的范围(需求bug)
  •  
  • Bug分类:
  • Defect,缺陷:存在于软件中的误差,一静态形式存在于软件内部,可被激活;
  • Failure,失效:软件运行时产生的外部异常行为结果,表现为与客户需求不一致,功能终止,用户没法完成所须要的应用;
  • Error,错误:存在编写错误的代码,语法错误和逻辑错误。
  • Fault,故障:软件运行中出现的状态,可引发意外状况,若不加处理,可产生失效,是一个动态行为。
  •  
  • 下面看一些常见的分类:
  • 划分方式一:
  • 代码错误
  • 设计缺陷
  • 界面优化
  • 配置相关
  • 安装部署
  • 性能问题
  • 标准规范
  • 测试代码
  • 其它

 

  • 划分方式二:
  • 功能类(function)
  • 性能类(performance)
  • 界面类(UI)
  • 易用性类(usability)
  • 兼容性类(compatibility)
  • 其它(else)

 

三、为何要提交bug?

  • 1)加快缺陷的处理速度;
  • 2)提升测试的可信度;
  • 3)增强测试组与开发组在整个项目过程当中的团队合做;
  • 4)有效的错误跟踪法,为后续Bug分析和产品质量的度量提供依据; 

四、bug管理工具?

  • 开源:Bugzilla、BugFree、禅道、 EasyBug、 Mantis、 Trac;
  • 企业级:QC、 JIRA、
  • APP:Bugtags       

五、如何写好bug描述?

  • 需简要清晰,缺陷的必要信息。若是作得很差,会形成迷惑,并增长沟通成本。
  • 解决方法:bug模板
  • 好的bug描述应该包括9个基本部分:   

概述(简要指出程序错误的依赖关系,不要太长或过短)、缓存

项目(版本号)、所属模块、优先级别、严重等级(致命、严重、通常、提示)、安全

可重复性(不可再现、每3次出现2次、必现)、测试条件(软件-硬件配置-环境信息-操做系统-数据库-浏览器)、架构

操做过程和附件(图片、数据和日志)、预期结果 工具

六、常见的bug问题如何处理?

  • 1)相相似的bug,根本缘由不一样,哪怕表象同样,也要log两个或两个以上
  • 2)重复的bug, log以前在bug库找,将结果告诉伙伴,避免被开发打回
  • 3)不可重现的bug,要log详细描述清楚操做步骤、症状、测试环境等,这样对于再次重现也有必定的参考性
  • 4)小问题bug,也要log。不解决就会持续,小问题会影响客户信心
  • 其余:

发现的缺陷的数量说明不了软件的质量性能

不要期望找出软件中全部的缺陷单元测试

不要指望修复全部发现的缺陷测试

七、Bug生命周期

 new、open、fixed、re-open、delay、reject、closed.优化

 

八、如何进行bug分析?

  • 1) 模块的缺陷分布,通常用柱状图或饼状图,就是每个功能模块发现bug的比例,发现bug最多的模块证实在发布之后须要更多的维护。
  • 2) 缺陷的原由分布,通常用柱状图或饼状图,通常可分为架构缺陷、功能缺陷、易用性缺陷、性能缺陷、安全性缺陷、需求缺陷、界面文字缺陷。通常若是架构缺陷占的比例较大,则说明设计有很大问题。
  • 3) 按照不一样发现人员的缺陷分布,通常用柱状图或饼状图,通常分为测试人员发现,开发人员发现,beta测试发现,外部客户发现。若是测试人员发现的bug低于某个比例,证实质量保证测试不足。
  • 4) 缺陷差额分析,就是已经发现的和已经解决的曲线关系,以时间为横轴,二者越接近说明产品质量越高
  • 5)按照时间段的缺陷分布,通常用时间为横轴的曲线图表示,主要说明在哪一个阶段发现的bug最多,对测试总结有指导意义。

九、如何进行bug预防

  • 保证质量最好的方式是预防Bug,防范于未然
  • 1) 创建Bug预防体系:根因分析,总结不一样的项目常发现共同性的相似bug,提早告知开发,事前预防。并持续维护更新。
  • 2) 制定规范开发:代码规范,代码审核,单元测试,代码重构规范,开发自测。
  • 3) WEB方面的预防:分辨率、浏览器兼容性、出错提示显示代码信息、文字缩略和折行、重复提交、脚本攻击跨站攻击、敏感信息禁止缓存、密码加密、日志级别Info级别...
相关文章
相关标签/搜索