Bugzilla使用手册
简介:
Bugzilla是Mozilla公司向我们提供的一个开源的免费缺陷跟踪工具。作为一个产品缺陷的记录及跟踪工具,它能够为你建立一个完善的Bug跟踪体系,包括报告Bug、查询Bug记录并产生报表、处理解决、管理员系统初始化和设置四部分。并具有如下特点:
Bugzilla操作流程:
操作步骤
管理员的一些操作:
首先打开IE在地址栏里输入:http://server/bugzilla (server即bugzilla的服务器,具体安装步骤见我写的另一份文档),正常情况下应该显示如下界面
在这里我遇到一个问题,就是从这个页面登陆总是失败,如果有知道怎么回事的可以发邮件给我,大家共同讨论。可以点击“Forgot my Password”进入登陆界面:
登陆成功后可以进入最开始的界面了,这里可以看到我的账户了,并且以管理员账户登陆后下面的“Actions”“Edit”会比普通用户多出一些设置选择
我们先从“Edit”一栏中的各个参数选项来介绍吧
Prefs:
Account Preferences
主要是设置账户参数等信息,不做详细说明了
General Preferences
这里设置一般参数。例如CVS文件的分割,bug查看的顺序,可以根据自己的需要做更改
Email Preferences
这里设置E-mail收发的。选择什么情况下收到邮件通知。
Assignee:分配人
Reporter:报告人
CCed:抄送人
Voter:投票人(不知道这个是用来做什么的)
Saved searches
查看保存的查询
Permissions
查看权限
Parameters:
这里面是设置bugzilla参数的地方,可设置的参数十分庞大。(网上汉化的教程说在这里面可以设置汉化,但始终没有成功)我们保持默认设置。
User Parameters:
这里设置用户参数,默认应用到所有用户,Enable框选择是否对用户可用,如果勾选则用户可以在自己的User Parameters中看到并设置,如果没有勾选则用户不能看到,显示默认的选项。
Users:
这里主要用来查看和添加用户
点进去后可以修改用户相关信息:
Login name:登陆名称,这里设置email的名称
Real name:真实名称
Password:可以为用户设置一个新密码
Disable text:如果这里不为空则用户帐号将被禁用,这里用来解释被禁原因
Group access:
在组访问设置里面有两列构选框,
第一列(左边列):可以为别的用户设置成为这个组的成员,既是说如果我把一个用户某一组第一列勾选,则授权这个用户就可以添加其他用户到这个组,相当于管理这个组。
第二列(右边列):成为这个组的成员。
由下图中的勾选及提示就可看出:
用户成为一个组的成员使用检查框或灰色条显示。灰色条表明是间接成员关系,不管是从其他组派生的(用方框扩起来,就是在Group设置中该组勾选Inherit自其他组)还是通过正规表达式(在设置组参数中可以通过正规表达式添加成员)。
在第一列的勾选框上有方框扩起来,表明另一个组的成员可以授权某个用户成为该组成员(用方括号扩起来表明这个组是继承自另一个组,那个组的成员自动成为本组成员,这样那个组的成员也可以授权某个用户为这个组的成员)
Products:
在这里你可以添加、删除“产品”,这里的product可以理解为我们要测试的一个项目名称,即为TD中的project
下面我们来新建一个Product作为实例
新建Product:
输入名称,说明,投票设置(?一直不理解bugzilla中投票是一种什么原理,让大家决定这个bug应该怎么修改怎么处理么?)
新建完成后需要为这个Product新增Components(组件,就是具体程序下面的某一个模块),Version(版本),Group(组的管理)
新建Components:
新建组件,就是在产品或称项目下分出许多其他的模块,这样好定位bug,明确负责人
新建组件:
输入组件信息:
下面输入的负责人地址必须是已经新建了的负责人
新建成功:
我们可以继续这样创建多个Component,也可以对存在的Component进行编辑、保存、删除等操作。
这里可以看到,我新建了两个component:
新建Version:
Add 版本号:
添加版本1.0.0.1
添加成功(不能添加同样的版本号,bugzilla会有提示)
这里我添加了3个版本:
回头再看一下Product的信息:
Flags:
在这里你可以新建Flags(标记),标记的意思就是表明一个bug或附件是否通过或是被拒绝(+表示通过,-表示拒绝,?表示被用户请求)。
比如我在附件中设置一个标记:review,用来标记用户复查他的补丁,如果一个开发者要求review,则状态会置为review?,如果补丁通过则状态为review+,如果没通过review-
添加bug标记:
添加详细的Flag:
这里需要我们把每个字段说明一下:
- Name:简单指明flag的类型
- Description:详细说明这个类型
- Category:那些必须包含或必须排除bug的产品、组件,应可以由用户为它们设置标志
- Sort Key:从1到32768的一个数字,这个类型将被存储并在列表中显示给用户,如果你不在乎类型显示的顺序或者你想让它们以字母顺序显示则在这里选择“忽略”
Active(默认勾选,这个类型的标志显示在用户界面并可以设置)
Requestable(默认勾选,用户可以要求这个类型的标志被设置)
- CC List:如果要求谁应该得到一份通知拷贝则在这里写下Email地址全称,用逗号分割,不必登陆bugzilla
Specifically requestable(默认勾选,用户可以让其他特定的用户设置类型标记)
Multiplicable (多个类型标志可以在一个bug上设置)
- Grant Group:允许一个组同意/拒绝这个类型的标志(如果想要所有有哪个户都可以同意/拒绝这些标志,则保持这里设置为空)
- Request Group:如果这个类型的标志是被要求的,组可以允许要求(如果想要所有有哪个户都可以同意/拒绝这些标志,则保持这里设置为空)注意,要求如果Grant Group没有定义那么Request Group是没有作用的
添加Attachments标记:内容与添加bug标记一样
在这里可以设置:OS,Hardware,Priority,Severity里面具体的值
OS:
添加或删除操作系统的类型(可以在提bug时选择)
我们添加一个新的值:注意这里我们就可以看到Sortkey(见Flags->Sort key)了,这个是排序关键字
Hardware:
添加或删除硬件的类型(可以在提bug时选择)
Priority:
添加或删除优先级(可以根据自己项目组的习惯设置)
Severity:
添加或删除严重级别(可以根据自己项目组的习惯设置)
Group:
在这里设置组
Name:
组名称,使用UserInGroup函数写在定制的cgi文件中。也可以当用户提交bug时email给确定的几个组
Description:
描述信息,在bug报告中给某一个组里成员显示,让同一组里的用户选择是否这个bug将被限制(?)
User RegExp:
这是一个可选项,如果填写的话将会自动给这个组授权成员关系,检查符合perl正规表达式的Email地址,不要忘记结尾用$结束,例如'@mycompany\.com$'
Use For Bugs:
这个标志用来决定这个组是否符合被提bug,如果你把这个标志去除掉,则用户将不能添加bug给这个组,已经存在在这个组里的bug还将继续存在。使用这个方法比直接删除一个组要好的多,它可以保持用户列表并使用来限制bug的组列表不混乱
Type:
用于识别系统组
Add Group:
在New Name中输入Group名字:Test
在New Description中输入解释:测试组
在New User RegExp中不输入
Use For Bugs保持勾选
下面还有一个勾选框:Insert new group into all existing products 默认情况下新建的组会分配到所有存在的产品(products)中去,如果不勾选这个框则会阻止分配,使得只有当提加到产品(products)中组才可见。这里我们勾选上。
回到group list中查看一下,可以看到组已经添加成功:
我们可以点开这个组再看一下参数的设置:
我们可以看到中间有一段话说明怎么给组内添加成员,一共有三种方法:1、编辑用户的时候选择 2、使用user regexp识别用户地址 3、在“Group Permissions”中勾选,使当前组添加到另一个组中。
“组权限(Group Permissions)”的设置:
Grant(授权):被选择的组的成员可以授权成员关系给当先组(当前我们察看的是Test组)
Inherit(继承):被选择的组的成员可以自动成为当前组的成员(当前我们察看的是Test组)
(注意要弄清Grant,Inherit的区别,这个也影响到User中的设置)
下面还有一些选项是关于转换早期版本bugzilla组的操作,我们不讲了。
这里我们对Test组再作一些操作:
在User Regexp中输入:yangmh@grandsoft.com.cn$pengy@grandsoft.com.cn
勾选成为几个组的Grant关系:
点击Save Changes,保存成功:
Keywords:
在这里设置关键字:
Add a new keyword:
添加一条新的关键字:
添加成功:
Whining:
投诉(?)
“Whining”就是当bugzilla在有序间隔执行一个保存查询后通过emial发送bug结果列表
设置一个whine事件,点击“Add a new event”,为将要发送的信息输入一个主题,
为事件添加时间表,点击“Add a new schedule”,时间表由天,一天中的时间或者间隔的时间(如每隔15分钟),目标email地址(可以更改或不可更改,由你的权限决定)组成。一个时间可以由多个时间表,用于运行在多时间或为不同用户。
查询来自于保存的查询,在search页面中创建。天津爱一个查询点击“Add a new query”,在search下拉框中选择一个预期的保存查询名称,为这个bug表添加一个标题。Sort是一个可选择的项,用国有多个查询在这里它就用来决定执行顺序(从最低到最高)。如果你选择“One message per bug”,则每一个匹配查询的bug将被发送给他所有者的email地址
这里我填写信息如下:
这里面我设置了一个whining但是很奇怪当我点击Update/Commit时没有什么成功的提示,同时我也没有收到什么邮件,这里需要再做研究