1、bug由来

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

2、什么是bug?

bug是缺陷的一种表现形式,而一个缺陷是可以引发多种bug的。软件测试,为了发现软件中的错误而运行软件的过程。

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

3、为什么要提交bug?

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

4、bug管理工具?

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

5、如何写好bug描述?

  • 需简要清晰,缺陷的必要信息。如果做得不好,会造成迷惑,并增加沟通成本。
  • 解决方法:bug模板
  • 好的bug描述应该包括9个基本部分:

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

项目(版本号)、所属模块、优先级别、严重等级(致命、严重、一般、提示)、

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

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

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

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

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

不要指望找出软件中所有的缺陷

不要期望修复所有发现的缺陷

7、Bug生命周期

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

8、如何进行bug分析?

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

9、如何进行bug预防

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

测试基础:Bug管理那些事_20160910的更多相关文章

  1. 测试基础【第六篇】bug要素及其生命周期

    bug的要素 为了让开发人员更准确.更快的看懂Bug,测试需要按照一定的规范提交bug. 缺陷id:一般由缺陷管理系统自动生成: 缺陷标题:概要描述缺陷: 发现人:一般是缺陷管理系统自动获取当前用户: ...

  2. bug管理

    BUG提交规范 1.标题 2.步骤描述 ①.步骤使用序号编排 ②.在特定情况下发生的问题,还需提供准确的前提条件 ③.精准的描述bug产生的路径后,再描述现象 如: >打开客户端进行首页-> ...

  3. 五款轻量型bug管理工具横向测评

    五款轻量型bug管理工具横向测评 最近正在使用的本地bug管理软件又出问题了,已经记不清这是第几次了,每次出现问题都要耗费大量的时间精力去网上寻找解决方案,劳心劳力.为了避免再次出现这样的情况,我决定 ...

  4. 项目管理、测试管理、代码bug 管理

    1.友盟统计     阿里旗下的产品 http://www.umeng.com/ 2.bugly    腾讯旗下的产品 http://bugly.qq.com/ 3.禅道  项目管理工具  需要部署到 ...

  5. 管理篇:测试Leader应该做哪些事

    基于前面的2篇分享:基础篇和进阶篇,这篇博客,整理了之前大佬的分享:作为一个测试leader,应该做那些事情... 一.负责测试组的工作组织和管理 1.参加软件产品开发前的需求调研和分析: 2.根据需 ...

  6. 开发人员必备的几款bug管理工具

    Bug是软件开发过程中的“副产品”,也是开发人员最不想见到的状况.如果没有跟踪和梳理各种bug和问题并及时解决,项目就会花费非常多的时间,导致整个项目的重心偏移.如果在产品开发过程中,使用一个合适的B ...

  7. bug管理工具

    1..禅道 禅道项目管理软件(简称:禅道)集产品管理.项目管理.质量管理.文档管理.组织管理和事务管理于一体,是一款功能完备的项目管理软件,完美地覆盖了项目管理的核心流程. 禅道的主要管理思想基于国际 ...

  8. 如何安装一个优秀的BUG管理平台——真的是手把手教学!

    前言 就BUG管理而言,国内的禅道做得很不错,而且持续有更新.我们来看看如何从头到尾安装禅道,各位要注意的是,不是文章深或者浅,而是文章如何在遇到问题的时候,从什么途径和用什么方法解决问题的.现在发觉 ...

  9. 关于TransactionScope出错:“与基础事务管理器的通信失败”的解决方法总结

    遇到此问题先需确认几个问题: 1)MS DTC是否设置正确? 2)是否启用了防火墙?是否对DTC做了例外? 3)是否做了hosts映射?是否跨网域通信? 开发分布式事务,碰到一个错误“与基础事务管理器 ...

随机推荐

  1. Python学习进程

    1周第1天 主要是变量的学习(11月8日) 1.1 python安装(win和linux下)1.2 ipython安装及使用1.3 变量的定义1.4 变量赋值1.5 运算符(赋值.算术.关系.逻辑)1 ...

  2. 自动化运维工具ansible部署以及使用

    测试环境master 192.168.16.74webserver1 192.168.16.70webserver2 192.168.16.72安装ansiblerpm -Uvh http://ftp ...

  3. CCF 201512-4 送货(错误)

    直接用DFS深搜,检查了好久没能发现错误,贴上来以后慢慢看... /* DFS深度优先搜索 Edge保存边 u{v,been} cnt记录走过的街道 如果没有就return ;继续递归 */ #inc ...

  4. java Ajax的应用

    一.Ajax的使用步骤 步一:创建AJAX异步对象,例如:createAJAX() 步二:准备发送异步请求,例如:ajax.open(method,url) 步三:如果是POST请求的话,一定要设置A ...

  5. python基础-面向对象进阶

    一.什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的研究.它首先被 ...

  6. 处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    原因: vs2010默认的是4.0框架,4.0的框架是独立的CLR,和2.0的不同,如果想运行4.0的网站,需要用aspnet_regiis注册4.0框架,然后用4.0的Class池,就可以运行4.0 ...

  7. C# Webbrowser 常用方法及多线程调用

    设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagNa ...

  8. flexbox布局神器

    前言 2009年,W3C提出了一种新的方案----Flexbox布局(弹性布局),可以简便.完整.响应式地实现各种页面布局.Flex布局模型不同于块和内联模型布局,块和内联模型的布局计算依赖于块和内联 ...

  9. 架构师养成记--8.Queue

    一.ConcurrentLinkedQueue 是一个适合在高并发场景下,无锁,无界的,先进先出原则.不允许为null值,add().offer()加入元素,这两个方法没区别:pull().peek( ...

  10. 安装Windows10,Ubuntu双系统14.04LTS记录

    参考链接:http://www.jianshu.com/p/2eebd6ad284d(推荐直接看这个链接,我也是看这篇博客装的)然后自己记录一下,防止以后找不到了 本记录是在Windows10 上安装 ...