加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

缺陷记录及跟踪工具Bugzilla简介

(2008-06-22 18:47:13)
标签:

杂谈

1 Bugzilla简介
1.1 产生
Bugzilla是一个共享的免费的产品缺陷记录及跟踪工具。由Mozilla公司提供。创始人是Terry Weissman,开始时使用一种名为“TCL”的语言创建的,后用Perl语言实现,并作为Open source发布。


1.2 特点
Bugzilla能够为你建立一个完善的bug跟踪体系,包括报告bug、查询bug记录并产生报表、处理解决bug、管理员系统初始化和设置四部分。Bugzilla具有如下特点:


1.基于Web方式,安装简单、运行方便快捷、管理安全。


2.有利于缺陷的清楚传达。本系统使用数据库进行管理,提供全面详尽的报告输入项,产生标准化的bug报告。提供大量的分析选项和强大的查询匹配能力,能根据各种条件组合进行bug统计。当缺陷在它的生命周期中变化时,开发人员、测试人员、及管理人员将及时获得动态的变化信息,允许你获取历史记录,并在检查缺陷的状态时参考这一记录。


3.系统灵活,强大的可配置能力。Bugzilla工具可以对软件产品设定不同的模块,并针对不同的模块设定开发人员和测试人员。这样可以实现提交报告时自动发给指定的责任人,并可设定不同的小组,权限也可划分。设定不同的用户对bug记录的操作权限不同,可有效控制进行管理。允许设定不同的严重程度和优先级。可以在缺陷的生命期中管理缺陷。从最初的报告到最后的解决,确保了缺陷不会被忽略。同时可以使注意力集中在优先级和严重程度高的缺陷上。


4.自动发送Email,通知相关人员。根据设定的不同责任人,自动发送最新的动态信息,有效的帮助测试人员和开发人员进行沟通。


2 安装Step by Step
Bugzilla是一个基于WEB的缺陷管理系统。前台用Perl语言实现,后台使用MySQL数据库。因为Bugzilla除了通过WEB来跟踪处理bug外,还同时通过Email来跟踪bug的处理过程。如果不通过Email来跟踪bug的话,Email电子邮件系统并不是必要的。但是,如果要正常运行Bugzilla,必须设置一个smtp邮件发送服务器。


安装Bugzilla需要MySQL、Perl等等配套软件。为了简化Bugzilla的安装过程,让大家少走弯路,我们把Bugzilla及其配套软件的安装包都整合到一个目录Bugzilla-2.20.1下,并以Step by Step的方式介绍安装及配置过程:


Bugzilla-2.20.1


01.mysql


02.perl


03.bugzilla


04.ReadMe


2.1 安装MySQL
版本:MySQL-5.0.20.win


1、进入Bugzilla-2.20.1\01.mysql\mysql-5.0.20-win32\目录,点击运行setup.exe进行安装。选择安装路径。建议安装在一个空的硬盘分区上,因为数据库将在这里创建。安装目录名字最好不要变动,因为可能会导致MySQL服务不能启动。这里假设你的安装位置为d:\MySQL。


2、启动windows的任务管理器,查看是否有MySQLd-nt.exe进程在运行,有则说明MySQL已经启动;如果没有这个进程,请按后面的【问题解答】操作,保证有MySQLd-nt.exe进程在运行后进入下一步;


3、用root用户登录MySQL:进入命令行状态,进入MySQL\bin目录,输入"mysql -u root -p",回车,再回车即可(password为空);


4、修改MySQL的root用户密码:


mysql>use MySQL;


mysql>UPDATE user SET Password=PASSWORD('') WHERE user='root';


mysql>FLUSH PRIVILEGES;


说明:其中为root用户的新密码。更改密码后,要用root用户访问MySQL,必须使用MySQL -u root -p,按提示敲入正确的root新密码。


5、创建bugs用户,并赋给相应的权限:


mysql>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, DROP, REFERENCES, LOCK TABLES, CREATE TEMPORARY TABLES ON bugs.* TO bugs@localhost IDENTIFIED BY 'password';


mysql> FLUSH PRIVILEGES;


说明:要记住bugs用户的密码,在bugzilla配置文件要用到。


6、创建bugs数据库:


mysql>create database bugs;


mysql>exit





【问题解答】
如果安装MySQL后,MySQL服务没有启动,请打开windows目录下修改my.ini文件里MySQL的安装目录。如果没有my.ini文件,则在windows界面下启动winMySQLadmin.exe,就可以生成my.ini文件,并启动MySQLd-nt进程。进程启动不起来大部分原因是因为卸载MySQL后重新安装在不同目录下导致的。此时,请卸载后先删除windows目录下面的my.ini文件再安装。





【注意事项】


1、不要安装MySQL-4.0.22-win版本。此版本在Windows Server 2003上重复出现Coredump问题。


2、低于2.20RC1版本的Bugzilla与MySQL 5.0.12及以上版本不兼容。如果要使用MySQL 5.x作为后台数据库,需要使用最新版本的Bugzilla。


2.2 安装perl及其附加模块


版本:ActivePerl-5.8.8.817-MSWin32-x86-257965.msi


1、安装Perl:进入Bugzilla-2.20.1\02.perl\目录,鼠标点击运行ActivePerl-5.8.8.817-MSWin32-x86-257965.msi进行perl主软件包的安装。


2、安装运行Bugzilla所需的附加模块:进入Bugzilla-2.20.1\02.perl\目录,执行install.bat安装perl的模块,这个批处理会一次性安装bugzilla要求的所有十几个模块。


2.3 安装邮件服务器
版本:ArGoSoft Mail Server 1.8.8.1(如果已存在邮件服务器,或者不需要邮件发送功能则不需要安装)


1、安装ArGoSoft Mail Server:进入Bugzilla-2.20.1\05. ArGoSoft Mail Server\目录,运行mspro1881.exe,进行ArGoSoft Mail Server邮件服务器的安装。


2、给服务器改一个比较特别的名字,以使在该邮件服务器上开设的电子信箱域名部分符合互联网的习惯:例如把服务器改名为pubtest.com。


3、在ArGoSoft Mail Server上以该服务器名字创建邮件服务器,并为Bugzilla的管理员开设电子信箱。





如果不通过Email来跟踪bug,则不必安装邮件服务器。但是,Bugzilla正常运行必须要设置一个smtp邮件发送服务器。然而,安装smtp服务器,如果设置不当,smtp服务器有可能被滥用来发送垃圾邮件。这里提供一个简便的解决办法:安装IIS 4.0自带的SMTP服务。同时,通过取消中继邮件等设置,使该SMTP服务不能真正发送邮件。


2.4 安装Bugzilla及其补丁


版本:Bugzilla-2.20.1(最新版本及相关文档资料请到
http://www.bugzilla.org/
下载)


1、把Bugzilla-2.20.1\03.bugzilla\下面的bugzilla目录拷贝到你要安装的硬盘根目录;


2、在命令行状态下,进入\bugzilla\目录运行“perl checksetup.pl”进行检查,会提示无法访问数据库,并生成localconfig文件;


3、用ultraedit等文本编辑软件修改bugzilla目录下面的localconfig文件,找到“$db_pass = '';”行,把bugs用户的密码加进去——$db_pass = 'password';


4、.然后运行perl checksetup.pl进行检查。此时会生成Bugzilla的后台数据库。此次会提示你设置管理员帐户和密码(管理员帐户请输入管理员的电子信箱,但是密码可以与管理员电子信箱的密码不同);


5、修改e-mail的发送功能


Bugzilla 2.20.1版本,在Windows系统中邮件发送功能支持较好,不需要修改Bugzilla系统的程序,在Bugzilla的参数中配置:


Bugzilla 2.18.3及以下版本,需要修改e-mail发送函数:


Bugzilla安装在Windows操作系统,需要对e-mail的发送功能函数作修改。


编辑\bugzilla\bugzilla目录下BugMail.pm文件,找到并替换“MessageToMTA”函数。配置email邮件发送的相关参数(邮件服务器,管理员信箱):


sub MessageToMTA ($;$) {


my ($msg, $rcpt_to) = (@_);





my $sendmailparam = "";


unless (Param("sendmailnow")) {


$sendmailparam = "-ODeliveryMode=deferred";


}





if ($enableSendMail == 1) {


#open(SENDMAIL, "/usr/lib/sendmail $sendmailparam -t -i")


# die "Can't open sendmail";


#


#print SENDMAIL trim($msg) . "\n";


#close SENDMAIL;





use Net::SMTP;


my $smtp_server = 'localhost'; # change this








($enableSendMail && $rcpt_to) return;





# Use die on error, so that the mail will be in the 'unsent mails' and


# can be sent from the sanity check page.


my $smtp = Net::SMTP->new($smtp_server)


die 'Cannot connect to server \'$smtp_server\'';





$smtp->mail('bugzilla@huawei.com'); # change this


$smtp->to($rcpt_to);


$smtp->data();


$smtp->datasend($msg);


$smtp->dataend();


$smtp->quit;


}


}


2.5 配置IIS
1、打开【控制面板】->【管理工具】->【Internet 服务管理器】, 【默认 Web 站点】点按右键选择【属性】->【主目录】->【配置…】,【应用程序映射】中点击【添加】添加扩展名为.pl、.plx、.cgi文件的映射,方法、参数如下(假设Perl安装在C:\Perl):


可执行文件: C:\Perl\bin\perl.exe -T "%s" %s


扩展名: .pl 或者 .plx 或者 .cgi


动作: 仅限于GET,HEAD,POST





注1:这个“-T”一定要加,否则访问时会报错:


Too late for "-T" option at d:\bugzilla-2.20.1\index.cgi line 1.





2、在Default Web Site右键选择“新建-》虚拟目录”,你可以给这个虚假目录起一个名字,


例如“bugzilla”,指向你的Bugzilla安装目录,并在默认页中加入“index.cgi”。


2、Windows Server 2003的IIS 6.0需要如下图所示,在【Internet 服务管理器】->【Web服务扩展】中把“所有未知CGI扩展”、“所有未知ISAPI扩展”、“Perl CGI Extension”、“Perl ISAPI Extension”由“禁止”修改为“允许”。


2.6 配置Apache(备选方案,仅在采用Apache作为web服务器时需要)


2.6.1 下载Apache 2.2.3


http://httpd.apache.org/download.cgi
2.6.2 安装并配置
修改配置文件: \Apache安装目录\conf\httpd.conf(在配置文件中修改下面几处)


#配置端口


#Listen 12.34.56.78:80


Listen 80


# 'Main' server configuration


#管理员邮箱,可以任意配置


ServerAdmin
lihuailin@gmail.com
#服务器名称及端口


ServerName bugzilla:80


#bugzilla程序所在目录


DocumentRoot "D:/Bugzilla/Bugzilla"





# 下面的目录地址需与上面配置的bugzilla路径相同.





#增加对cgi脚本支持


AddHandler cgi-script .cgi


Options ExecCGI


AllowOverride All


Order allow,deny


Allow from all





#主页索引增加index.cgi





DirectoryIndex index.html index.cgi





2.6.3 修改CGI文件


最后一步也是比较重要的一步,利用UE批量修改bugzilla目录下的cgi文件,将第一行perl解析器路径修改为步骤2.2 perl所在的路径


For example:#!D: /perl/bin/perl –WT


注意:此处仅修改上面的路径即可,前面的“#!”符号不要删除


2.7 检查安装是否成功
启动浏览器,在地址栏输入http://localhost/bugzilla检查bugzilla安装是否成功——看到bugzilla的页面就表示安装成功,现在可以正常使用了。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有