bugzilla是一个缺陷跟踪管理工具,对她渴望已久,终于成功安装了,深刻体会到了安装过程的繁琐。几经波折总算是用上这个软件了,心里很兴奋。
我工作的公司是一个刚起步的软件外包公司,开发,管理都在摸索中发展,就软件测试这个职位来是,更是不规范。公司就我一个测试员,我有是新手,所以关键就在自己了。为了让测试更好管理,一直想找一个bugs管理工具,使自己的工作更有效,开发的软件质量更高。
由于本人知识的欠缺,她又是一个开源的,基于Unix的软件,安装过程可谓是辛苦阿,总的感觉是所以可能出现的错误操作都出现了。不过,出现问题也不一定是坏事,可能会又有意外的收获。再这次安装过程中还是学到了不少东西。下面将我的安装过程及易出现的问题记录如下:
一、安装系统环境:
Windows XP
二、安装所需软件及下载地址:
bugzilla
Activeperl
mysql
apache
Activeperl
:
http://downloads.activestate.com/ActivePerl/Windows/
Bugzilla
:
http://www.bugzilla.org/download/
三、具体安装过程:
1.对于mysql和apache的安装我是用的这个集成开发环境bitnami-drupal-6.3-0-windows-installer.exe,对于像我这样的菜鸟建议用这个。
2.安装bugzilla
bugzilla并不需要安装,下载后解压到本地的某个文件即可。
3.
解压后
,
在
dos
下执行
checksetup.pl,
看缺少哪几个
perl module,
具体命令如下
:
H:\Perl\bin>perl I:\Site\bugzilla\site\checksetup.pl
可以看出
,
我的
perl
和
bugzilla
都放在
C
盘根目录下
,
执行后
,
发现有很多模块需要安装
:
Checking perl modules...
Checking for CGI (v2.93) ok: found v3.29
Checking for TimeDate (v2.21) not found
Checking for PathTools (v0.84) ok: found v3.25
Checking for DBI (v1.41) ok: found v1.58
Checking for Template-Toolkit (v2.15) not found
Checking for Email-Send (v2.16) not found
Checking for Email-MIME-Modifier (any) not found
Checking available perl DBD modules...
Checking for DBD-Pg (v1.45) not found
Checking for DBD-mysql (v4.00) not found
Checking for DBD-Oracle (v1.19) not found
上 面是执行的一部分结果,必须安装的模块有5个,TimeDate , Template-Toolkit ,Email-Send , Email-MIME,Email-MIME-Modifier ,可选的安装有三个,就是数据库的三个,根据选 择数据库的不同,分别安装.因为我用的是mysql,所以一会就选择dbd-mysql进行安装;还有后面的一堆是可装可不装的,到时等需要用时再安装不迟.
接下来,我们就来安装这些模
4.安装perl module
这里建议大家用activeperl 5.8.8,不要用5.10.0.较新的这个版本没有DBD mysql module。
通过
activeperl
的
PPM
进行模块的安装
.
TimeDate (v2.21)
的安装
TimeDate
比较奇怪
,
在
PPM
上找到的
TimeDate
版本是
1.16,
但是直接在
ppm
上安装完了后
,
执行
checksetup.pl,
发现
TimeDate
安装成功
,
并且版本升级到了
2.22,
后来也没发现问题及原因
.
DBD-mysql (v4.00)
的安装
我在
PPM
里面没有搜索到该模块,只好在
dos
下输入以下语句
:
H:\Perl\bin>ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd
回车
,PPM
自动从
http://theoryx5.uwinnipeg.ca/ppms
上下载最新的
DBD-mysql.ppd
进行安装。
其实
Email-Send (v2.16)
等模块也可以通过这样安装。
这样五个必须安装的
module
都已经安装完毕
,
5.
重新执行
checksetup.pl.
在
bugzilla
目录下生成
localconfig
文件
.
修改
localconfig:
将
$db_host
改成
mysql server
端的服务器
,
我装在本机
,
所以不用修改
;
将
$db_name = 'bugs';
改成
$db_name = 'bugzilla'; ----bugzilla
是我新建的
BUG
数据库的名称
;
$db_user = 'bugs';
改成
$db_user = 'bug'; ----bug
是我登录
bugzilla
数据库的用户名
;
$db_pass = '';
改成
$db_pass = 'bug'; ----bug
是我登录
bugzilla
数据库的用户
bug
的密码
;
$db_port = 0;
改成
$db_port = 3306; ----mysql
安装默认端口是
3306;
修改完成后
,
保存
.
6.
再次重新执行
checksetup.pl.
在
dos
窗口中可以看到在往数据库中创建相应的表结构
.
表结构创建完后
,
提示要求输入管理帐号的邮件
,real name
和密码
,
输入后
,
继续执行
,
直到提示
"Now that you have installed Bugzilla......".
安装完成。
7.
接下来我们要将
bugzilla
部署到
Apache
上
,
以便于项目成员可以通过浏览器进行访问
.
修改安装好的
apache
配置文件
httpd.conf
1
)、修改侦听端口
Listen 80
2
)、修改主目录配置
(这里不推荐使用,推荐建立单独的
bugzilla
虚拟目录进行配置,如
3
、)
若要直接通过
http://localhost/
访问,则修改主目录
修改
DocumentRoot
参数
,
默认情况下该参数是指向
apache
的安装目录下的
htdos
文件夹,修改该参数为
bugzilla
的安装路径下。同时要记得修改下面的
<Directory>
参数
配置
CGI
访问,需要把下面这一句前面的
#
给去掉
AddHandler cgi-script .cgi
并添加这句:AddHandler cgi-script .pl
修改
Options Indexes FollowSymLinks
为
Options Indexes FollowSymLinks ExecCGI
修改
AllowOverride None
为
AllowOverride All
在
AllowOverride All
下一行添加
ScriptInterpreterSource Registry-Strict
修改
apache
的缺省访问文件:在
DirectoryIndex index.html index.html.var
后面添加一个
index.cgi
3
)、建立单独的
apache
的虚拟目录
在
bugzilla
到目录下创建一个配置文件
bugzilla.conf
输入以下内容:
Alias /bugzilla/ "I:/Site/bugzilla/site/"
Alias /bugzilla "I:/Site/bugzilla/site"
<Directory "I:/Site/bugzilla/site">
Options ExecCGI All
AllowOverride All
ScriptInterpreterSource Registry-Strict
order allow,deny
Allow from all
</Directory>
注意:在配置文件中是使用“/”而不是“\”
然后修改
httpd.conf
,在最后添加一句话:
Include "I:/Site/bugzilla/conf/bugzilla.conf"
用于包含该配置文件。
Httpd.conf
中的配置
CGI
访问,同样需要把下面这一句前面的
#
给去掉
AddHandler cgi-script .cgi
并添加一句:AddHandler cgi-script .pl
同时修改
apache
的缺省访问文件:在
DirectoryIndex index.html index.html.var
后面添加一个
index.cgi
。
4
)
、修改注册表,新建项
HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command
修改默认值为
%perl
的安装路径
%\bin\perl.exe �CT
。
这里还有一个笨方法:将所有的
bugzilla
目录下的
*.cgi
文件的头部的
#!/usr/bin/perl �CwT
修改为:
#!c:\perl\bin\perl �CwT
,就是指定了
perl
的安装路径。
5
)、重启
apache
8.
配置完成,输入
http://localhost/bugzilla
就可以看到
bugzilla
的主页面了
让Bugzilla界面运行起来!
当我们使用 web 页面浏览 http://127.0.0.1/bugzilla/时,意外的发现出错了。
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
More information about this error may be available in the server error log.
…
是因为Apache找不到perl文件的路径,因此将.cgi和.pl的顶部的perl路径由/use/bin/perl 替换成C:/perl/bin/perl即可。
即:将 #!/usr/bin/perl 替换为:#!C:/perl/bin/perl
作为一个通用的解决方法,可以将所有的#!/usr/bin/perl �CwT和#!/usr/bin/perl �Cw替换成#!C:/perl/bin/perl
修改后,再次浏览 http://127.0.0.1/bugzilla/,OK!我们可以看到Bugzilla的主界面了。