你笑的时候全世界陪你一起笑,你哭的时候只有你一个人哭

在Window下安装bugzilla

上一篇 / 下一篇  2006-12-12 15:22:39 / 个人分类:其他测试技术

一. 说明
    本讲解是在Windows2003 sp1操作系统下进行Bugzillal环境的搭建,其他操作系统和各使用软件间的版本兼容没有进行测试,如遇到问题可以大家共同讨论学习

二. 操作系统及使用软件
      Windows 2003 中文企业版 +sp1

ActivePerl-5.8.8.817-MSWin32-x86-257965.msi

Mysql 4.1.19

Bugzilla-2.20.2

这里用到的软件在同目录software文件夹下 

三. 正式开始搭建环境
推荐更改以下所有软件的默认安装路径,不要放在系统盘。此处我将安装主目录设在 D盘下,本文下面的路径均为此路径,自行安装更改为其他路径后请配置时也作相应修改。

还要说一下,在win下搭建bugzilla确实太难了,因为本来就不是为工作在win下而设计的,bugzilla也是在最近几个版本才加强了对win的支持。

3.1 安装IIS
我们这里是使用IIS发布bugzilla,Win2003默认不安装iis,所以我们需要首先在Win组件中安装,这个比较简单我就不详细说了。

控制面板-〉添加删除程序—〉添加删除win组件-〉应用程序服务器-〉IIS。勾选上点击下一步即可。

3.2 安装ActivePerl
    我这里安装的是ActivePerl-5.8.8.817-MSWin32-x86-257965.msi。修改安装路径为:D:\usr\(根据国际习惯,也可以自己修改)。

3.3      安装mysql数据库
这个比较简单,双击安装程序,选择Custom安装,最好更改安装路径。之后就是安装。

安装过程中会让你注册帐号,我选择跳过。安装完成后选择配置mysql

选择standard configuration即可,如果想更为详细的配置可以选择detail,这里我们就不详细讲了。

点击next进入安装数据库服务配置,制定服务的名字,是否以后可以通过命令行操作mysql,我们都勾选安装

再点击next进入帐户设置,必须为root用户设置一个密码,建议使用比较强壮的密码。

next后就可以点击execute来执行刚才你所做的设置了。

mysql安装全部完成。

3.4 Mysql的配置:
打开mysql的command line client

输入之前设置好的root密码,创建数据库bugs,用户bugs,密码为空。并赋予这个用户一定的权限。(因为bugzilla配置文件中默认是数据库bugs,用户bugs,密码为空,所以我们在这里设置好后往下进行就会较方便了。)

创建数据库:

mysql>create database bugs;

创建用户并赋予权限:

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

刷新一下:
mysql> FLUSH PRIVILEGES;

mysql的设置就完成了。


3.5  安装bugzilla
将bugzilla 2.20.1文件夹所有文件全部拷贝到D:\bugzilla\下。在 开始-〉程序-〉运行 中输入CMD,进入D:\bugzilla目录下,运行 perl checksetup.pl 检查bugzilla安装所需模块是否都已找到,默认情况下是需要安装许多模块的,不用着急,这里我已经把所需模块都放到software文件夹下了:bugzilla-bundle.zip。解压缩这个zip包,放到D盘下,打开CMD,定位到这里,运行ppm,在ppm>下依次输入并回车:

install AppConfig.ppd 

install DBI.ppd 

install GD.ppd 

install GDTextUtil.ppd 

install MailTools.ppd 

install PatchReader.ppd 

install Template-Toolkit.ppd 

install TimeDate.ppd 

install Chart.ppd 

install DBD-mysql.ppd 

install GDGraph.ppd 

install MIME-tools.ppd 

即可安装完所有模块(中间可能某一个模块会提示安装失败,这时请安装完其他模块后再重新安装失败的模块) 。

再从命令行到D:\bugzilla\下运行 perl checksetup.pl,检查是否需要的模块都已经安装并找到了。是的话则会在目录下生成一个localconfig文件,这个文件是bugzilla运行时的配置文件。打开这个文件我们只需看一下用户名和密码那块是否和我们在mysql中设置的一样即可。

再次运行 perl checksetup.pl 会生成bugzilla需要的模版和数据库中的表。

输入exchange服务器(这个不要输入错误,因为bugzilla以后很多的操作都是需要发送邮件的,比如新建一个account后初始密码是发送到你的邮箱里的)。接着会让你输入管理员的邮箱地址,名字,密码
 
确认输入后即完成bugzilla的安装了。

再次输入perl checksetup.pl 确认数据库已经连接正常。修改D:\bugzilla\目录下所有cgi文件,去掉第一行的最后一个字符T。可以使用UE中“在多文件里替换”功能。

3.6  配置IIS发布bugzilla
打开IIS管理器,在默认网站下新建一个虚拟目录 ,名称为bugzilla(怎样发布你可以根据自己的需要来设置,这里我就先说我是怎样设置的,大概原理都一样),勾选虚拟目录的权限为“写入”(这个比较重要,不然后面的汉化无法设置),路径定位到D:\bugzilla\

在iis上右键选择“默认网站”-〉“属性”,点击“主目录”下面的“配置”,“添加”对cgi扩展名的解析

在“文档”中添加默认主页:index.cgi,并移到上面。

web服务扩展中开启对perl的支持

好了,打开IE,在地址栏中输入http://127.0.0.1/bugzilla(因为我是设置为默认网站下的一个虚拟目录,所以要多加一个/bugzilla)察看一下吧,应该出现bugzilla的主页了吧

汉化比较简单,将汉化包(建议使用UTF8的那个)解压缩到bugzilla\template\下,文件夹更名为cn(里面默认有一个en,解压缩后注意查看一下结构是否一样),使用管理员账户登录bugzilla,点击 Parameters(系统参数设置)链接,将 languages 一项的值改为 cn,保存即可,回过头来看看你的bugzilla变成中文了吧。如果考虑到安全问题,我们可以在把IIS中的“写入”权限去掉。

如果服务器是在域中,则还需要在IIS的属性-〉目录安全性-〉身份验证和访问控制 中勾选“集成Windows身份验证”,这样管理员在bugzilla中所作的修改才能生效。

3.7 注意事项:
     在将bugzilla汉化完成后还需作一些调整:

<Buzilla安装目录>\template\cn\default\list\table.html.tmpl。
将其中的 "bug_status" => { maxlength => 4 } , 改为 "bug_status" => { maxlength => 16 } ; "resolution" => { maxlength => 4 } 改为"resolution" => { maxlength => 16 } , 即将这两栏的长度由4改为16。存盘退出

为保证向后兼容,按照Bugzilla官方的建议,2.20版Bugzilla的汉化文件全部存为 UTF-8 格式。将 <Bugzilla安装目录>\Bugzilla\CGI.pm 的第55行改为 $self->charset('UTF-8')

打开 系统设置(Parameters), 找到 newchangedmail:一项, 将该项下文本框里面的 Subject: [Bug %bugid%] %summary% 改为 Subject: [Bug %bugid%] 吧, 或改为 Subject: Attention [Bug %bugid%] ---总之避开 %summary% 这个变量里面的汉字
 

四. 总结:
Bugzilla的测试环境搭建与安装全部讲述完毕,由于时间原因我没有对不同版本间的兼容性作试验,且这几种开源软件不同版本可能会有较大的变化,所以如果使用不同环境搭建时遇到问题,就只能大家一块来讨论解决了。
 

 ===========================================================================

自己写的原文档中有截图,但这里附加图片太麻烦了,所以一概略掉,文字描述应该还是挺清楚的,如果还有不明白的发邮件给我,我会把原始文档寄去,不过需要请我吃一顿,啊哈哈


TAG: 其他测试技术

xu1129330072的个人空间 引用 删除 xu1129330072   /   2012-10-09 15:28:13
非常感谢
shl5254的个人空间 引用 删除 shl5254   /   2011-06-08 18:03:41
我也有问题要请教啊
我的dbd-mysql模块提示装不进去啊,ppm.bat里没有
yulu126的个人空间 引用 删除 yulu126   /   2009-05-21 17:28:31
我在安装bugzilla 后,打开时,提示 内部服务器错误,是什么原因引起的呢??  大哥能 给点意见吗?
引用 删除 yavacom111   /   2009-04-22 10:22:59

非常感谢
引用 删除 vjboydjq   /   2009-03-13 22:35:58
恩  谢谢了
dionysus的个人空间 引用 删除 dionysus   /   2007-08-06 21:30:34
你是说在ppm安装组建的时候就过不去么?
my_test的个人空间 引用 删除 my_test   /   2007-08-06 17:13:06
这篇文章原来是大哥写的啊,我有个问题想请教,强大哥帮我看看:


bugzilla3.0- PerlMagick找不到
各位先進可否指導之:

我試過很多方法~

ppm rep add 了很多網址:
網址如下:
http://landfill.bugzilla.org/ppm
http://search.cpan.org/dist/PerlMagick/
http://theoryz5.uwinnipeg.ca/ppms/package.xml
http://openinteract.sourceforge.net/ppmpackages
http://glob.com.au/ppm
htto://ppm4.activestate.com/MSWin32-x86/5.8/820/...

但是一直無法將此 ppm install PerlMagick l正確安裝,
Email-Send 也抱怨版本太舊,
不知道要怎麼解決這兩個問題
dionysus的个人空间 引用 删除 dionysus   /   2007-05-27 11:04:02
不知道你想要了解apache的什么?我觉得在只是作为bugzilla在win下的一个web服务apache还是挺简单的
老婆婆 引用 删除 annayin   /   2007-05-24 16:16:05
能否说一下安装apache做为web服务器的使用?
dionysus的个人空间 引用 删除 dionysus   /   2007-05-16 22:56:43
To Jiessica
不好意思,这个文档是我写给公司内部培训用的,software是公司内部的文件夹
Jiessica的个人空间 引用 删除 Jiessica   /   2007-05-11 20:28:21
请问下,我为什么看不到你所说的Software目录呢?可否告诉我具体位置,谢谢.
引用 删除 winbo   /   2007-02-02 10:08:05
1. 在我自己的机器上终于验证通过bugzilla,主要碰到两个问题,解决了贴出来希望碰到问题的朋友能搜索到。
   1) perl 模块File::Spec模块版本为0.82,而Bugzilla需要至少0.84版本,原因是BugzillaModules中的File::Spec模块版本太低,而perl本身带的版本为3.xx版本,足以满足Bugzilla的需要,所以从BugzillaModules中删除File::Spec模块即解决。
   2) 第二个问题是无法建立数据库,在运行perl checksetup.pl时,总是出现如下错误:

Adding new table bugs ...
DBD::mysql::db do failed: BLOB/TEXT column 'status_whiteboard' can't have a defa
ult value at Bugzilla/DB.pm line 509
        Bugzilla:B::_bz_add_table_raw('Bugzilla:B::Mysql=HASH(0x27bb1e4)', '
bugs') called at Bugzilla/DB.pm line 484
        Bugzilla:B::bz_add_table('Bugzilla:B::Mysql=HASH(0x27bb1e4)', 'bugs'
) called at Bugzilla/DB.pm line 331
        Bugzilla:B::bz_setup_database('Bugzilla:B::Mysql=HASH(0x27bb1e4)') c
alled at Bugzilla/DB/Mysql.pm line 427
        Bugzilla:B::Mysql::bz_setup_database('Bugzilla:B::Mysql=HASH(0x27bb1
e4)') called at checksetup.pl line 1598

原因不是很清楚,可能是因为版本不兼容的问题,我原来用的版本是mysql-essential-5.0.27,换
了mysql-essential-4.1.22就好了
dionysus的个人空间 引用 删除 dionysus   /   2006-12-19 22:13:33
没有遇到你说的这种错误,可能你安装的版本和我不一样?发现开源软件不同版本间的差别可能很大。按照这篇文档中的安装方法我在许多极其上都可以正确安装
也许是你的mysql安装有问题,或是perl的数据库组件没安装好
引用 删除 LuoJoely   /   2006-12-19 11:14:13
Hi Dionysus,在安装过程中有没有遇见
Adding new table bugs ...
DBD::mysql::db do failed: BLOB/TEXT column 'status_whiteboard' can't have a defa
ult value at Bugzilla/DB.pm line 509
        Bugzilla:B::_bz_add_table_raw('Bugzilla:B::Mysql=HASH(0x27bb1e4)', '
bugs') called at Bugzilla/DB.pm line 484
        Bugzilla:B::bz_add_table('Bugzilla:B::Mysql=HASH(0x27bb1e4)', 'bugs'
) called at Bugzilla/DB.pm line 331
        Bugzilla:B::bz_setup_database('Bugzilla:B::Mysql=HASH(0x27bb1e4)') c
alled at Bugzilla/DB/Mysql.pm line 427
        Bugzilla:B::Mysql::bz_setup_database('Bugzilla:B::Mysql=HASH(0x27bb1
e4)') called at checksetup.pl line 1598
这样的错?
 

评分:0

我来说两句

Open Toolbar