漫漫测试人生路,吾将上下而求索

BUGZILLA安装总结(待完善和补充)

上一篇 / 下一篇  2008-03-01 15:19:00 / 个人分类:测试工具

 

WindowsXP下安装基于IISBugzilla

安装准备:

1Windows平台下的perl解释器,推荐使用ActivePerl-5.8.8.822

下载地址:http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl

2MySQL数据库以及MySQL控制台,使用版本为4.1
下载地址为:http://www.mysql.com/downloads/index.html

http://www.mysql.com/downloads/mysql-5.0.html(MySQL 5.0 Alpha)

3Bugzilla,目前最新版本为3.12

下载地址:http://www.bugzilla.org/download.html

相关软件的安装

一、安装mysql

Mysql自定义安装到C:\Mysql,因为在BugzillaChecksetup.pl中默认Mysql安装在C:\mysql,如果安装到了其他目录,那么安装时需要对该文件进行手工修改,指定Mysql的安装路径。对于Mysql的安装,一路点击下一步即可。安装完成后,可以继续配置Mysql,设置新密码。

也可以cmd进入命令行窗口在C:\mysql\bin目录下运行mysql –u root –p命令,进入到mysql的命令提示界面。其中-u表示使用的用户名,rootlinux系统中的默认管理员身份,-p后跟密码,默认为空。可进入mysql后使用SQL语句“UPDATE user SET password = password('引号内为想该的密码') WHERE user = 'root';”来更改密码。

安装完成后,手动运行C:\mysql\bin\winmysqladmin.exe文件,它会自动将mysql数据库注册为服务并启动。此操作仅需运行一次,因为Mysql注册的服务为自动类型,所以每次计算机启动时均会自动运行。


然后,我们需要在mysql中创建Bugzilla的用户以及数据库,主要三条命令为:

a、建立数据库bugs
create database bugs;

 

b、建立用户bugs,密码为空,对Bugs数据库具有一定权限
GRANT SELECT,INSERT,UPDATE,DELETE,INDEX,ALTER,CREATE, LOCK TABLES,DROP,REFERENCES ON bugs.* TO bugs@localhost IDENTIFIED BY '';

 

c、从mysql数据库授权表中重新装载权限。
FLUSH PRIVILEGES;

执行过程如下图:(这里我们建立的数据库名为Bugs,数据库用户名为Bugs,密码为空)

注意事项:

1、  安装Mysql时,要确保电脑中没有老版本的Mysql,如果有首先是要卸载mysql服务,不然就算卸载了mysql程序,服务中依然有mysql这项,问题就解决不了.假设我的mysql装在C:\MYSQL,先在我的电脑->管理->服务中将Mysql服务停止,然后在命令提示符c:\mysql\bin下运行mysqld-nt -remove(中间有空格),会提示卸载成功.然后再在   控制面板>>> 添加或删除程序 中卸载mysql,之后重启,再装上mysql运行mysqld.exe(win2000下是mysqld-nt.exe),命令提示符框一闪而过,这样你这可以在任务管理器中看到mysql这个进程了

二、安装Activeperl
Activeperl
的安装很简单,一路点击Next即可,它会自动安装到C:\perl目录。同时在系统变量Path中增加自己的C:\perl\bin路径信息。

三、安装、配置WEB服务器。
对于IIS,一般Windows 2000会默认安装,如果没有安装,那么可以在控制面板->添加删除程序->添加/删除Windows组件中来添加“Internet信息服务器,系统会自动安装相关组件(此时需要Windows的安装盘)。

配置Web服务器的目的就是要让Web服务器能够调用perl去解析执行.pl.cgi的文件,同时增加Index.cgi为默认文档,然后增加Bugzilla所在目录的WEB共享别名。

IIS的配置
对于IIS,在安装ActivePerl的时候安装程序为我们自动生成了.pl.plx的映射,但是没有生成.cgi的映射,我们可以在IIS管理器里面进行配置,在默认网站或者Internet信息服务上面按右键选择属性出现服务器属性对话框(依据IIS版本和设置所影响范围不同略有不同

虚拟目录标签下,选择配置按钮、“添加”应用程序扩展名映射。

可执行文件名:

C:\Perl\bin\perl.exeperl目录) -xC:\Bugzillabugzilla目录) -wT "%s" %s
 扩展名:.cgi
 动作

 限制为:GET,HEAD,POST

 然后,在文档标签下,添加index.cgi文件为默认文档。

 

  注意事项:

  1、  对于没有进行过配置的IIS,可能会禁止匿名访问,如果我们要允许匿名访问,可以在设置页面的目录安全性标签中的匿名访问和验证控制中选择编辑,去掉集成Windows验证选项即可。

  2、  如果Bugzilla所在目录为NTFS分区,还需要设置所在目录的安全属性,允许IUSR_XX(Internet来宾帐户,这里XXXX和计算机名相同)去读写该目录。

  3、  如果默认网站停止不能启动,可能是80端口被迅雷或其他应用程序占用的原因,停止或更改其他程序端口即可

 

四S四、Perl脚本的安装以及Bugzilla的初步配置。
  Bugzilla为我们准备了一个很好的脚本文件checksetup.pl来进行配置,我们随时可以运行chekcsetup.pl文件来进行服务器配置而不会对Bugzilla系统造成任何影响。

 1、运行该脚本的方法是:

在命令行下进入Bugzilla的主目录,键入:perl checksetup.pl,运行后,该脚本会给出系统所缺的各种元素乃至获取办法。

 

 2、初次运行的时候,系统首先会验证perl模块是否足够,一般会缺少比较多的perl模块。如果我们是单独下载的每个perl模块进行安装,则需要使用ppm install <perl模块名.ppd>进行。

下载地址:http://search.cpan.org/(注意模块版本应高于要求的版本)


如果可以连接上网络,那么一切很简单,只需要进入bugzilla目录下:

C:\>cd bugzilla

 

C:\Bugzilla>ppm

在弹出的Perl Package Manager窗口下安装bugzilla需要的perl模块,如果有缺少的或版本不对的再单独下载安装。

 

 3、当插件安装完后,再次运行perl checksetup.pl,系统会生成localconfig文件,此文件是包含了Bugzilla的一些配置信息,如果您的mysql安装到C:\mysql,所创建的数据库名称为bugs数据库用户为bugs,密码为空,那么不需要对localconfig文件进行任何修改,否则需要对localconfig的相应条目进行修改。

# What SQL database to use. Default is mysql. List of supported databases

# can be obtained by listing Bugzilla/DB directory - every module corresponds

# to one supported database and the name corresponds to a driver name.

$db_driver = 'mysql';

 

# The DNS name of the host that the database server runs on.

$db_host = 'localhost';

 

# The name of the database

$db_name = 'bugs';

 

# Who we connect to the database as.

$db_user = 'bugs';

 

# Enter your database password here. It's normally advisable to specify

# a password for your bugzilla database user.

# If you use apostrophe (') or a backslash (\) in your password, you'll

# need to escape it by preceding it with a '\' character. (\') or (\)

# (Far simpler just not to use those characters.)

$db_pass = '';

 

# Sometimes the database server is running on a non-standard port. If that's

# the case for your database server, set this to the port number that your

# database server is running on. Setting this to 0 means "use the default

# port for my database server."

$db_port =3306;

 

 4、修改好localconfig文件,再次运行perl checksetup.pl,如果不出意外的话,会顺利编译模板,然后建立数据库,最后提示输入超级用户信箱、用户姓名以及口令。输入后,Bugzilla基本安装完成,可以从web上来进行访问了。

 

 注意事项:

 1WindowsXP下安装Perl Cpan模块

a.http://search.cpan.org/搜索你所需要的模块下载,一般是gz,或者tgz格式

b.winRAR之类解压缩软件接压缩

c.进入COMMAN模式,进入到刚才解压缩的文件夹,含有“Makefile.PL”文件的目录下:

依次运行:

        perl Makefile.PL
        nmake
        nmake test
        nmake install

安装就完成了.(有依赖关系的模块需要先安装依赖模块)

 

 2、服务器输入http://localhost/Bugzilla/可以访问bugzilla,其他电脑输入服务器地址http://服务器IP/Bugzilla/不能访问

  可能是服务器防火墙阻止了80端口的访问

控制面板->防火墙->例外->添加端口

 

遇到的问题

⑴用帐号登录BUGZILLA后,每页上方都会显示:

 Use of uninitialized value  in integer addition (+) at c:/Perl/lib/Time/Local.pm line 76.

 解决方法:

     edit c:/perl/lib/Time/Local.pm,lookfor the following line   (should  be at line 35):

     $MinInt = -$MaxInt - 1;

     change it to:

     $MinInt = 0;

 

BUGZILLA安装参考文章链接

http://www.51testing.com/?98723/action_viewspace_itemid_11299.html

http://dev.csdn.net/article/49/49481.shtm

http://blog.csdn.net/ycw/archive/2004/02/07/4187.aspx

BUGAILLA安装技巧和注意事项

⑴这里讲一讲首页中的“常用功能”、”常用链接“的链接显示有些不习惯,可以修改 template\cn\default\global\common-links.html.tmpl
<ul> <li>  转换成表格 <table> <tr> <td> ,显示在一行中,就好看多了。

  同样的,英文也处理一下,
template\en\default\global\common-links.html.tmpl
<ul> <li>  转换成表格 <table> <tr> <td> ,显示在一行中,就好看多了。

 

⑵设置parameters

用超级用户登录后,点击parameters设置bugzilla的参数,其中urlbase是以后发邮件中包含的,.所以一定要修改它, maintainer修改为超级用户,下面的就不是那么重要了,点击最下面的Submit Changes完成修改,再回到这个页面上查看,看是否已经修改,如果不能修改,,,那么就只有出绝招了,嘿嘿,,打开bugzilla目录C:\bugzilla\data下的params,在这里面手动修改它的参数,完成后就OK.

⑶commentonresolve:设为ON,系统将强制要求开发者处理完BUG后,必须填写修改的内容。

关于Bugzilla2.20发邮件以及邮件乱码的问题

1. 刚才试了,在Bugzilla2.20下发邮件,不必要安装什么特殊的sendmail.exe软件之类,只需要Perl的Mail::Mailer模块(这个模块你肯定装了,不然Bugzilla都转不起来);当然, 与email发送相关的参数 如 smtp server之类一定要在 Bugzilla的系统设置(Parameters)里面 设好;

2. 要想邮件不出现乱码,在使用UTF8编码的汉化包下,做如下改动:

a. \Bugzilla\CGI.pm的第55行改为  $self->charset('UTF-8');

b. 进入Bugzilla的系统设置(Parameters)里面,在 newchangedmail 一项里的 文本框文字的第一行加上Content-type: text/plain; charset=UTF-8 ,加后变为:
Content-type: text/plain; charset=UTF-8
From: bugzilla-daemon
To: %to%

.......

保存退出。

c. 部分用户反映,经过以上两个步骤后,收到的email的主题仍为乱码,网上提供的解决方案是:

打开文件 \Bugzilla\BugMail.pm, 在第 586 行加上两行:

use Encode;
$substs{"summary"} = encode('MIME-Q', $substs{"summary"});

不知什么原因,我用Netscape Client接受的邮件的主题行仍然为乱码。。但用Foxmail接受的全部OK。

采用GB2312编码格式的汉化包(不推荐)可参照以上步骤解决邮件乱码问题。

(注明:我使用此方法并没有解决我邮件乱码的问题,但感觉这个方法以后会有用,所以贴在此处。)


 


TAG: 测试工具

引用 删除 lancai990   /   2010-07-08 15:51:55
请问使用Bugzilla3.6时,能成功登录,但在给product添加component的时候出错:
Undef to trick_taint at Bugzilla/Util.pm line 64
        Bugzilla::Util::trick_taint(undef) called at Bugzilla/User.pm line 1702
        Bugzilla::User::login_to_id(undef, 1) called at Bugzilla/Component.pm line 248
        Bugzilla::Component::_check_cc_list('Bugzilla::Component', 'ARRAY(0x29f732c)', 'initial_cc') called at Bugzilla/Object.pm line 451
        Bugzilla::Object::run_create_validators('Bugzilla::Component', 'HASH(0x2d5d5dc)') called at Bugzilla/Component.pm line 134
        Bugzilla::Component::run_create_validators('Bugzilla::Component', 'HASH(0x2d5d5dc)') called at Bugzilla/Component.pm line 116
        Bugzilla::Component::create('Bugzilla::Component', 'HASH(0x2d5d5dc)') called at C:\Bugzilla\editcomponents.cgi line 132
windows xp下。perl5.10.1,IIS5及MySQL5.1
请问应该怎么解决呢。能否给予指教,非常感谢!
 

评分:0

我来说两句

Open Toolbar