Bug是软件开发过程当中的“副产品”,也是开发人员最不想见到的情况。若是没有跟踪和梳理各类bug和问题并及时解决,项目就会花费很是多的时间,致使整个项目的重心偏移。若是在此过程当中,测试人员使用一个合适的Bug管理工具,将能够提升整个团队的工做效率,把控产品质量,更好的完成任务。网络
根据每一个公司性质的不一样,规模的不一样,所用到的bug管理工具也可能不一样。大家用的bug管理工具是什么呢?下面介绍几款主流的bug管理工具:运维
JIRA(付费)工具
JIRA的生产者把JIRA定义为Professional Issue Tracker,即它是一个专业的问题跟踪管理的软件。这里的”问题”对应的英文单词是Issue,因此含义比较广,包括Bug,Task,Enhancement,Improvement等等跟软件开发相关的名词。测试
跟踪管理即对问题的整个生命周期进行记录和管理。一个问题从建立到解决到关闭涉及到不少相关信息,包括是什么问题,谁发现的问题,谁处理了这个问题,如何处理的,相应的代码有什么改变等等,JIRA能够方便的记录这些信息,而且在问题的不一样状态呈如今相应的责任人面前。spa
JIRA具备不少优势,对测试来讲,如下3点必须知道:操作系统
1. 针对问题其默认定义了丰富的字段来记录问题的各类信息,包括Issue Type, Issue summary, Issue Description, priority, assignee, reporter, resolutions等等;.net
2. 默认定义了工做流的一些状态: new, open, defer, pending, resolved, reopened, closed。 默认定义了一个简易的工做流, open-in progress-resolved-closed;3d
3. 支持邮件通知,邮件通知能够同工做流中和工做流以外的事件关联;orm
Tracblog
Trac是一个为软件开发项目须要而集成了Wiki和问题跟踪管理系统的应用平台,是一个开源软件应用。Trac以简单的方式创建了一个软件项目管理的Web应用,以帮助开发人员更好地写出高质量的软件;Trac应用力求不影响现有团队的开发过程。
Trac是以面向进度模型为项目管理模型的,很明显的特色就是它以里程碑(Milestone)方式进行项目管理的。每一个里程碑中的具体要作哪些事情,就使用Ticket来进行定义、跟踪等。
Gitlab
Gitlab管理bug也是最近才接触到。跟项目绑定,特别方便管理bug,随时assign给相关开发,也能够看到开发提交bug时的Commits,每次发版能够对照相关提交,既方便测试,也能够在出现问题时找到对应开发。
Mantis
缺陷管理平台Mantis,也作MantisBT,全称Mantis Bug Tracker。
Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操做的形式提供项目管理及缺陷跟踪服务。在功能上、实用性上足以知足中小型项目的管理及跟踪。更重要的是其开源,不须要负担任何费用。
基本特性:
1. 我的可定制的Email通知功能,每一个用户可根据自身的工做特色只订阅相关缺陷状态邮件;
2. 支持多项目、多语言;
3. 权限设置灵活,不一样角色有不一样权限,每一个项目可设为公开或私有状态,每一个缺陷可设为公开或私有状态,每一个缺陷能够在不一样项目间移动;
4. 主页可发布项目相关新闻,方便信息传播;
5. 具备方便的缺陷关联功能,除重复缺陷外,每一个缺陷均可以连接到其余相关缺陷;
6. 缺陷报告可打印或输出为CSV格式,1.1.7版:支持可定制的报表输出,可定制用户输入域;
7. 有各类缺陷趋势图和柱状图,为项目状态分析提供依据,若是不能知足要求,能够把数据输出到Excel中进一步分析;
8. 流程定制方便且符合标准,知足通常的缺陷跟踪。
Bugzilla
Bugzilla 是一个开源的缺陷跟踪系统(Bug-Tracking System),它能够管理软件开发中缺陷的提交(new),修复(resolve),关闭(close)等整个生命周期。
Bugzilla Bug报告分类
(1)待确认的(Unconfirmed)
(2)新提交的(New)
(3)已分配的(Assigned)
(4)问题未解决的(Reopened)
(5)待返测的(Resolved)
(6)待归档的(Verified)
(7)已归档的(Closed)
(8)Bug处理意见
(9)已修改的(Fixed)
(10)不是问题(Invalid)
(11)没法修改(Wontfix)
(12)之后版本解决(Later)
(13)保留(Remind)
(14)重复(Duplicate)
(15)没法重现(Worksforme)
Bugzilla指定处理人:
(1)能够指定一个处理人
(2)如不指定处理人,则系统指定管理员为默认处理人
Bugzilla连接:
输入超连接地址,引导处理人找到与报告相关联的信息
Bugzilla概述:
(1)概述部分“Summary”的描述,应保证处理人在阅读时可以清楚提交者在进行什么操做的时候发现了什么问题。
(2)若是是通用组件部分的测试,则必须将这一通用组件对应的功能名称写入概述中,以便从此查询。
Bugzilla平台操做系统:
(1)测试应用的硬件平台(Platform),一般选择“PC”
(2)测试应用的操做系统平台(OS)
BUG管理工具的跟踪过程
再来讲说一下bug管理工具的跟踪过程(以BugZilla为例子):
测试人员发现了BUG,提交到Bugzilla中,状态为new,BUG的接受者为开发接口人员,
开发接口将BUG分配给相关的模块的开发人员,状态修改成已分配,开发人员和测试确认BUG,若是是本人的BUG,则设置为接收;若是是别的开发人员的问题,则转发出去,由下一个开发人员来进行此行为;若是认为不是问题,则须要你们讨论并确认后,拒绝这个BUG,而后测试人员关闭此问题。
若是开发人员接受了BUG,并修改好之后,将BUG状态修改成已修复,并告知测试在哪一个版本中能够测试。
测试人员在新版本中测试,若是发现问题依然存在,则拒绝验证;若是已经修复,则关闭BUG。
我以上分享的每一个工具都有本身的优缺点,选择一款适合本身的来提高工做效率。bug管理工具也不只仅是介绍到的几款,还有禅道,Redmine等,你们能够本身搜搜了解下。
关注51Testing软件测试网,提高it技能,从不会到熟练只差一步。