1、Bugzilla使用手册 简介: Bugzilla是Mozilla公司向我们提供的一个开源的免费缺陷跟踪工具。作为一个产品缺陷的记录及跟踪工具,它可认为你建立一个完善的Bug跟踪体系,涉及报告Bug、查询Bug记录并产生报表、解决解决、管理员系统初始化和设立四部分。并具有如下特点: Bugzilla操作流程: 操作环节 管理员的一些操作: 一方面打开IE在地址栏里输入:http://server/bugzilla (server即bugzilla的服务器,具体安装环节见我写的另一份文档),正常情况下应当显示如下界面 在这里我碰到一个问题,就是从这个页面登陆总是失败,假
2、如有知道怎么回事的可以发邮件给我,大家共同讨论。可以点击“Forgot my Password”进入登陆界面: 登陆成功后可以进入最开始的界面了,这里可以看到我的账户了,并且以管理员账户登陆后下面的“Actions”“Edit”会比普通用户多余一些设立选择 我们先从“Edit”一栏中的各个参数选项来介绍吧 Prefs: Account Preferences 重要是设立账户参数等信息,不做具体说明了 General Preferences 这里设立一般参数。例如CVS文献的分割,bug查看的顺序,可以根据自己的需要做更改 Email Pref
3、erences 这里设立E-mail收发的。选择什么情况下收到邮件告知。 Assignee:分派人 Reporter:报告人 CCed:抄送人 Voter:投票人(不知道这个是用来做什么的) Saved searches 察看保存的查询 Permissions 察看权限 Parameters: 这里面是设立bugzilla参数的地方,可设立的参数十分庞大。(网上汉化的教程说在这里面可以设立汉化,但始终没有成功)我们保持默认设立。 User Parameters: 这里设立用户参数,默认应用到所有用户,Enable框选择是否对用户可用,
4、假如勾选则用户可以在自己的User Parameters中看到并设立,假如没有勾选则用户不能看到,显示默认的选项。 Users: 这里重要用来查看和添加用户 点进去后可以修改用户相关信息: Login name:登陆名称,这里设立email的名称 Real name:真实名称 Password:可认为用户设立一个新密码 Disable text:假如这里不为空则用户帐号将被禁用,这里用来解释被禁因素 Group access: 在组访问设立里面有两列构选框, 第一列(左边列):可认为别的用户设立成为这个组的成员,既是说假如我把一个用户某一组第一列
5、勾选,则授权这个用户就可以添加其他用户到这个组,相称于管理这个组。 第二列(右边列):成为这个组的成员。 由下图中的勾选及提醒就可看出: 用户成为一个组的成员使用检查框或灰色条显示。灰色条表白是间接成员关系,不管是从其他组派生的(用方框扩起来,就是在Group设立中该组勾选Inherit自其他组)还是通过正规表达式(在设立组参数中可以通过正规表达式添加成员)。 在第一列的勾选框上有方框扩起来,表白另一个组的成员可以授权某个用户成为该组成员(用方括号扩起来表白这个组是继承自另一个组,那个组的成员自动成为本组成员,这样那个组的成员也可以授权某个用户为这个组的成员) Product
6、s: 在这里你可以添加、删除“产品”,这里的product可以理解为我们要测试的一个项目名称,即为TD中的project 下面我们来新建一个Product作为实例 新建Product: 输入名称,说明,投票设立(?一直不理解bugzilla中投票是一种什么原理,让大家决定这个bug应当怎么修改怎么解决么?) 新建完毕后需要为这个Product新增Components(组件,就是具体程序下面的某一个模块),Version(版本),Group(组的管理) 新建Components: 新建组件,就是在产品或称项目下分出许多其他的模块,这样好定位bug,明确负责人 新建
7、组件: 输入组件信息: 下面输入的负责人地址必须是已经新建了的负责人 新建成功: 我们可以继续这样创建多个Component,也可以对存在的Component进行编辑、保存、删除等操作。 这里可以看到,我新建了两个component: 新建Version: Add 版本号: 添加版本1.0.0.1 添加成功(不能添加同样的版本号,bugzilla会有提醒) 这里我添加了3个版本: 回头再看一下Product的信息: Flags: 在这里你可以新建Flags(标记),标记的意思就是表白一个bug或附件是否通过或是被拒绝
8、+表达通过,-表达拒绝,?表达被用户请求)。 比如我在附件中设立一个标记:review,用来标记用户复查他的补丁,假如一个开发者规定review,则状态会置为review?,假如补丁通过则状态为review+,假如没通过review- 添加bug标记: 添加具体的Flag: 这里需要我们把每个字段说明一下: 1. Name:简朴指明flag的类型 2. Description:具体说明这个类型 3. Category:那些必须包含或必须排除bug的产品、组件,应可以由用户为它们设立标志 4. Sort Key:从1到32768的一个数字,这个类型将被存储并在列表中
9、显示给用户,假如你不在乎类型显示的顺序或者你想让它们以字母顺序显示则在这里选择“忽略” Active(默认勾选,这个类型的标志显示在用户界面并可以设立) Requestable(默认勾选,用户可以规定这个类型的标志被设立) 5. CC List:假如规定谁应当得到一份告知拷贝则在这里写下Email地址全称,用逗号分割,不必登陆bugzilla Specifically requestable(默认勾选,用户可以让其他特定的用户设立类型标记) Multiplicable (多个类型标志可以在一个bug上设立) 6. Grant Group:允许一个组批准/拒绝这个类型的标志(假如想要
10、所有有哪个户都可以批准/拒绝这些标志,则保持这里设立为空) 7. Request Group:假如这个类型的标志是被规定的,组可以允许规定(假如想要所有有哪个户都可以批准/拒绝这些标志,则保持这里设立为空)注意,规定假如Grant Group没有定义那么Request Group是没有作用的 添加Attachments标记:内容与添加bug标记同样 Field Values: 在这里可以设立:OS,Hardware,Priority,Severity里面具体的值 OS: 添加或删除操作系统的类型(可以在提bug时选择) 我们添加一个新的值:注意这里我们就可以看到Sor
11、tkey(见Flags->Sort key)了,这个是排序关键字 Hardware: 添加或删除硬件的类型(可以在提bug时选择) Priority: 添加或删除优先级(可以根据自己项目组的习惯设立) Severity: 添加或删除严重级别(可以根据自己项目组的习惯设立) Group: 在这里设立组 Name: 组名称,使用UserInGroup函数写在定制的cgi文献中。也可以当用户提交bug时email给拟定的几个组 Description: 描述信息,在bug报告中给某一个组里成员显示,让同一组里的用户选择是否这个bug将被限制(?)
12、 User RegExp: 这是一个可选项,假如填写的话将会自动给这个组授权成员关系,检查符合perl正规表达式的Email地址,不要忘掉结尾用$结束,例如'@mycompany\.com$' Use For Bugs: 这个标志用来决定这个组是否符合被提bug,假如你把这个标志去除掉,则用户将不能添加bug给这个组,已经存在在这个组里的bug还将继续存在。使用这个方法比直接删除一个组要好的多,它可以保持用户列表并使用来限制bug的组列表不混乱 Type: 用于辨认系统组 Add Group: 在New Name中输入Group名字:Test 在New Desc
13、ription中输入解释:测试组 在New User RegExp中不输入 Use For Bugs保持勾选 下面尚有一个勾选框:Insert new group into all existing products 默认情况下新建的组会分派到所有存在的产品(products)中去,假如不勾选这个框则会阻止分派,使得只有当提加到产品(products)中组才可见。这里我们勾选上。 回到group list中查看一下,可以看到组已经添加成功: 我们可以点开这个组再看一下参数的设立: 我们可以看到中间有一段话说明怎么给组内添加成员,一共有三种方法:1、编辑用户的时候选择
14、 2、使用user regexp辨认用户地址 3、在“Group Permissions”中勾选,使当前组添加到另一个组中。 “组权限(Group Permissions)”的设立: Grant(授权):被选择的组的成员可以授权成员关系给当先组(当前我们察看的是Test组) Inherit(继承):被选择的组的成员可以自动成为当前组的成员(当前我们察看的是Test组) (注意要弄清Grant,Inherit的区别,这个也影响到User中的设立) 下面尚有一些选项是关于转换初期版本bugzilla组的操作,我们不讲了。 这里我们对Test组再作一些操作: 在User
15、Regexp中输入:$ 勾选成为几个组的Grant关系: 点击Save Changes,保存成功: Keywords: 在这里设立关键字: Add a new keyword: 添加一条新的关键字: 添加成功: Whining: 投诉(?) “Whining”就是当bugzilla在有序间隔执行一个保存查询后通过emial发送bug结果列表 设立一个whine事件,点击“Add a new event”,为将要发送的信息输入一个主题, 为事件添加时间表,点击“Add a new schedule”,时间表由天,一天中的时间或者间隔的时间(
16、如每隔15分钟),目的email地址(可以更改或不可更改,由你的权限决定)组成。一个时间可以由多个时间表,用于运营在多时间或为不同用户。 查询来自于保存的查询,在search页面中创建。天津爱一个查询点击“Add a new query”,在search下拉框中选择一个预期的保存查询名称,为这个bug表添加一个标题。Sort是一个可选择的项,用国有多个查询在这里它就用来决定执行顺序(从最低到最高)。假如你选择“One message per bug”,则每一个匹配查询的bug将被发送给他所有者的email地址 这里我填写信息如下: 这里面我设立了一个whining但是很奇
17、怪当我点击Update/Commit时没有什么成功的提醒,同时我也没有收到什么邮件,这里需要再做研究 以上信息是管理员权限的用户可以操作的,下面我们进入普通用户也可选择的一些设立 用户也可做的操作: Home: 点击这个链接可以跳到bugzilla的主界面: 里面有一些常用的操作链接: Search existing bug reports:搜索已存在的bug报告,和点击search同样,可以在那里设立搜索条件等。 Enter a new bug reports:提交一个新bug,和点击new同样。 Summary reports and charts:查看bug报
18、告和图标,和点击reports同样。 Change password or user preferences:修改用户密码和信息,和点击prefs同样。 Log out user@domain:退出登录 Add to sidebar:添加其他工具条,需要mozilla浏览器支持,例如firefox。 New: 提交新bug,一方面选择产品(product): 这里我们选择GBQ3.0产品: 选择产品后我们可以看到具体bug提交的页面。 重要选择: 版本号(version):软件版本 组件(component):产品(product)中细分的组件 平台(pl
19、atform):硬件平台 操作系统(os):软件操作系统 优先级(priority):bug的优先级 严重级(severity):bug的严重级别 分派给谁(assign to):这个重要由你选则的模块(component)自动决定,当然也可以自己输入 抄送给谁(CC):可以选择同时把这封提交bug的邮件抄送给谁 概要(summary):类似于标题 描述(discription):具体的bug描述 选择框让哪个组可见,假如都不选的话则都可看见这个bug 如上图中我所设立,点击提交bug(commit),这时bug应当以邮件方式发送成功。由于汉化问题bugzilla发送的邮
20、件在outlook中中文字符始终是乱码显示。 这里显示提交成功,并且我们还可以设立其他的一些参数,如添加附件,添加评论,更改bug状态,打印,复制bug等。我们这里暂时只关注常用到的内容。 Search: 在这里我们可以设立查询: Find a Specific Bug: 找到一个特定的bug,在这里可以选择bug状态,产品,和关键字(在summary中查找) Advanced Search: 高级查询,可以根据不同bug参数结合来进行查询,这个就比较复杂了,但也不是很难理解,由于多数参数我们在new一个bug的时候已经都看到怎么设立了,相应的在这里我们设立欲查询
21、条件即可。 里面一些条件是可以多选的,如status,priority等。 这里的查询很全面,其中的组合操作还需要根据个人的盼望来设立,通过几次简朴的实验发现summary中输入单个字对bug的搜索将会更好一些,而输入词则不能对的搜索出bug,也许这个和字符编码有关吧? 直接简朴的bug查找: 我们可以直接在下面输入bug号进行查询 Reports: 这里面重要是使用表格和图表来显示bug信息,如bug走向,按版本或修改人显示bug数等,类似于TD中的Reports和Graphs Current state: Search: 显示bug状态,点击后进入
22、Advanced Search页面中 Tabular reports: 表格报告。通过设立横、纵轴和高级搜索中的一些条件来组合出表格形势的bug报告: 这里我举一个简朴的例子:查看GBQ3.0产品版本于分派人的表格报告: 点击生成报告: 在设立横纵坐标显示什么参数地方尚有一个Multiple Tables选项,这个选项的意思是多表格显示横纵坐标,例如我在这里选择component,这样生成的表格就会按照GBQ3.0中不同component单独显示,每个component的表格都是横坐标为version,纵坐标为assignee: 显示为: 其他
23、不同条件的报告生成就根据规定自己设立,这里不做具体说明了。 Graphical reports: 图表报告。可以生成线性图,柱状图和饼图。 设立条件与上一个表格报告类似,这里我们就简朴举出几个常用的例子。 查看不同版本bug严重级别的走向: 显示Line Graph 但目前没有发现bugzilla中有如何在横坐标排列出时间以作更好的显示,希望大家在使用过程中能给予帮助。 柱状图和饼图在设立上与线性图没什么区别,只是显示起来不太同样而已,这里不做具体说明 My Requests: 在这里查找需求,不太清楚这里的需求指的是什么,并且只是一个查询功能,所以不做介
24、绍 My Votes: Bugzilla有一种投票特性,就是每个产品(produce)都允许有拟定数量的投票(一些产品也许不允许投票),你投票用来指出那些bug你认为非常重要,必须修改。 依赖于管理员怎么配置相应的产品,你也许可以给同一个bug投票多次,但是记住,你的投票数量是拟定有限的!所以你可以给多数bug投少量的票,给少数bug投多票。 查看投票: 在查询中可以看到 投票: 提交bug的时候可以选择 这个页面也同样是一个查看的,这里不做具体说明。 My Bugs: 这个选项在Saved Searches下作为一个默认的保存查询,点击这里可以看到当前用户
25、提交的所有bug: 同样,我们可以在Search页面中保存自己的搜索: 例如我们查找状态(status)为all,产品(product)为GEB4.0的所有bug: 查询结果: 在Remember search中我们输入一个保存查询的名称,如GEB4.0-all,点击记住查询按钮。提醒保存成功: 上图中我们也可以看到在Saved Searches中有我们保存过的查询了。点击这个查询我们还可以作其他修改: Edit Search:重新编辑这个查询 Forget Search ‘查询名称’:删除这个查询。






