头在忙着他的技术研究,对团队建设、测试管理、流程规范都不怎么理会,眼见着产品进入后期整合阶段,在测试过错中出现很多Bug,单靠着我一个人用txt来收集整理bug需求,然后整理成word,放在svn上面去,然后邮件通知各模块负责人去修正,效率太慢了。拿着工程师的钱,干着项目经理的事情,哎。

抱怨完了,该干活的开始干活。

Bugzilla是一开源Bug Tracking System,是专门为Unix定制开发的。但是在windows平台下依然可以成功安装使用.

Testopia是一款和Bugzilla集成到一起的test case management系统.
     它的强大功能表现在以下几个方面:
1. 强大的检索功能
2. 用户可配置的通过Email公布Bug变更
3. 历史变更记录
4. 通过跟踪和描述处理Bug
5. 附件管理
6. 完备的产品分类方案和细致的安全策略
7. 安全的审核机制
8. 强大的后端数据库支持
9. Web,Xml,Email和控制界面
10. 友好的网络用户界面
11. 丰富多样的配置设定
12. 版本间向下兼容

安装部署

1. 下载安装文件

先从官网上面下载Bugzilla安装包,看一些ReadMe,它是基于Perl写的,数据库使用的是MySql,

Perl下载地址点此。MySql下载地址点此。Web服务器就用系统自带的IIS。Bugzilla下载地址点此

Bugzilla的汉化包下载地址点此

将Bugzilla解压到D盘,放在Bugzilla目录下,安装Bugzilla需要Perl相关组件,此处先放一放。

2. 安装MySql数据库

我下载的是zip安装包,这和网上一些教程介绍的安装包安装方法不一样,一路next下去就好了。MySql提供两种安装方式,

一种是msi格式,另一种是zip格式,各有各的好处,zip格式的MySql安装教程点此

安装好MySql后,需要新建一个Bug数据库和一个访问Bug数据库的MySql账户。

先将MySql的Bin目录添加到系统的环境变量中去,后续的Perl也是一样,需要将可执行文件的路径添加到系统环境变量中去。

以root用户登录进MySql,使用方法如下:

配置数据库。

上述就是MySql服务器的简单配置。

3. 安装Perl

按照安装包一步一步走下去,最后,将安装包中bin目录添加到系统环境变量中,如果在命令行中显示出如下变量,则表示安装成功。

Bugzilla需要Perl的一系列插件,直接在命令行中输入ppm upgrade –install 就可以安装所有Perl的插件

(其实,只要安装Bugzilla需要的就可以了,手贱点快,幸好网速快,下载过程蛮顺利)

和Ubuntu的apt更新源类似,peri也是从源上获取更新插件包,为了加快perl下载速度,可以添加perl源到ppm管理器中。

出现其他perl下载的问题,可以点此尝试解决。

4. 配置Bugzilla

进入Bugzilla目录,手动执行checksetup.pl,该脚本会检查所有必需的perl模块是否安装,缺啥安装啥。等到所有的都安装好之后,再次执行checksetup.pl,会在当前目录下生成localconfig文件。

有如下的关键几项需要我们来配置:

改成和MySql中配置的一样就可以,配置完后,再次执行checksetup.pl,经过耐心的等待,输入SMTP服务器地址、Bugzilla管理员名称和密码就可以了。

5. 配置IIS

我是用Win7自带的IIS来作为Web服务器的。Win7旗舰版默认没有开启这个服务。因此,需要先开启这些服务。

WIn+R,输入OptionalFeatures,打开Windows功能,选上如下的功能。

继续Win+R,输入inetmgr,打开Windows IIS配置管理工具。

基本的新建新建应用程序等一些基本设置,点此进入了解。下面介绍遇到的各种坑。

第一个坑:

在配置IIS的时候,访问目录无权限

解决方法:点击基本设置->连接为,默认选中的是“应用程序用户”,选择上面的特定用户,输入登陆电脑的用户名和密码。

第二个坑:

在添加脚本映射时,出现如下错误:

原因是没有包含CGI ASP功能

解决方法:选上下述功能就可以了,

同类问题解决方案,点此了解。

第四个坑:设置脚本映射出错

解决方法:在Default Web Site目录下设置处理程序映射

第五个坑:

添加应用程序账户后,在浏览器中输入http://localhost时,出现如下错误:

或者

解决方法:

添加脚本映射,请求路径选择*.pl,可执行文件根据实际情况,选择perl.exe –T %s %s,名称选择 Perl Script Map.还需要添加一个脚本映射,处理*.cgi的脚本。在这里,看到网上有很多人修改了Bugzilla目录下面所有cgi脚本的头文件解释路径,将#!/usr/bin/perl -wT替换为#!/usr/bin/perl -w,不修改,也是可以安装成功的。

这里的话,-T的参数一定要加上,弹出的提示框中,一定要点是。之前,我被网上的Installing under IIS 7.5给误导了。点了否,结果,怎么折腾都折腾不出来,气死人,后来点是,就可以了。此时,我深深的了解到,实践才是检验真理的唯一标准。

上述大概就是在折腾IIS中遇到的各种坑。

6.配置Bugzilla

在注册账户的时候,发送邮件时出现下面的错误,

怀疑是Bugzilla的SMTP没有配置好。根据 网上的Bugzilla使用手册及解决方案,需要确认在data/目录下的param文件,参数配置是否正确。第二是,查看SMTP认证插件和服务器的邮件服务器开启没有。

下面是配置例子:

maintainer :                  123@163.com
     mail_delivery_method :         SMTP
     mailfrom :                     123@163.com
     sendmailnow:                   on
     smtpserver :                   smtp.163.com
     smtp_username:                 123@163.com
     smtp_password :                **********

这里需要注意的是: maintainer、mailfrom必须相同,SMTP_username邮箱必须是真实存在的邮箱,smtp_password是真实邮箱对于的密码。

经过上述的配置,邮件已经发送成功。

提示:如果忘记了Bugzilla管理员的密码,可以 ./checksetup.pl --reset-password=管理员邮箱,就可以修改密码了。

基本的Bugzilla配置

urlbase :    指向你安装路径的URL,该URL会在新用户注册邮件中使用,用于注册登陆以及内网用户访问。

设置为Bugzilla所在的服务器IP即可。假设IP为192.168.1.100,则需要设置为http://192.168.1.100/

特别备注:当设置完此项设置后,之后的登陆就不能用localhost来登陆了,而是需要用设置的urlbase来登陆才行,我在这里卡主了一个多小时,设置了这个参数之后,在localhost里面注销再次登陆时,怎么就登陆不上去了,在地址栏中输入urlbase的地址后,才登陆成功了。

能够犯的错误都犯一次,下次就不会再犯错误了。看到网上一些教程,一切都很顺利的样子,我在这两天的搭建中,几乎是不可能这样顺利的,犯错,反思,搜索,总结记录,再犯错,再反思,再搜索总结和记录,这样才能更加深入的理解。

cookiepath:帮助浏览器正确的管理cookie。

maintainer : Bugzilla的主维护人

requirelogin: 登陆验证,防止匿名用户登录。

createemailregexp: 注册账号名称限制,如果设置为”.*”,任何人都可以创建他的账户。

如果设置为“@mycompany.com$”,只允许拥有myconpany账户的用户注册申请。

如果设置为空,仅仅管理员可以创建新账户,普通用户不允许申请账户。

allow_attachment_display: 是否允许浏览器窗口打开附件,默认为Off,这是为了防止附件中隐藏的恶意行为

如果要打开此项设置,需要指明附件所在地址,属性名称为attachment_base.例如:配置为http://www/Bugzilla.com/,则附件的下载地址为:http://www/Bugzilla.com/attachment.cgi?id=6

默认单次上传附件最大为1MB,我现在把它改为20M。

1. 配置maxattachmentsize 改为20000

2. 配置MySql的max_allowed_packet参数。进入MySql,

设置了cookie相关后,在重新登陆后,出现如下错误:

经过这个博客给出的解决方法,博客地址为Bugzilla的Cookie问题,不能解决这个问题。在重新设置Bugzilla,每执行完一个设置后,重新开一个网页登陆尝试,看看有没有 刷新后需要重新登陆的问题。最后定位到一个参数的配置

shutdownhtml,特别加红,以示警戒。最后,如果这个属性设置了值,不管是什么数值,都会导致上述的原因,解决的方法是不设置这个参数。至于更深层次的原因,不是很了解。在google上面找到这个Bug,点此进入。

Bugzilla上传附件失败,弹出如下提示:

     问题原因:用于上传附件的lib/CGI.pm程序中使用了默认的临时文件夹/usr/temp,而在windows系统中没有此文件夹,因此,可以在lig/CGI.pm中修改临时文件夹地址,修改如下:

7. 汉化Bugzilla

字体汉化:将前面下载的汉化包,解压,将顶层文件夹改名为cn,拷贝到template目录下就可以了。

帮助文件:将doc目录下的en文件夹整个复制一份出来,该名为cn,这样就确保了在中文环境下,显示帮助文件不正常的问题。

8. 总结

经过两天的部署学习,MySql+ActivePerl+IIS+Bugzilla终于取得成功,心中积累的郁闷一扫而空,这几天我所犯下的错误和遇到的问题,都总结出来并且尝试着找到解决方法去解决,网络的力量很强大,利用好google,(如果有人想上google,可以给我发邮件,我有上google的好宝贝,嘿嘿)。

希望这篇文章可以帮助更多在安装Bugzilla路上迷惑的人。

---------------------------分割线-----------------------------------------------

可恶的房东要收回房子,给他儿子娶媳妇用,11月底又要搬家了,希望一切平稳过渡。

下个星期,倒腾一下Testopia和hMailserver,看看好不够好用。

Bugzilla+MySql+IIS+ActivePerl搭建指南的更多相关文章

  1. Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程

    这篇文章主要介绍了Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程,需要的朋友可以参考下 准备篇 一.环境说明: 操作系统:Windows Server 201 ...

  2. 云服务器+tomcat+mysql+web项目搭建部署

    云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...

  3. ubuntu下mysql的环境搭建及使用

    ubuntu下mysql的环境搭建及使用 环境安装 使用如下命令分别安装服务端程序,客户端程序,及客户端依赖库 sudo apt-get install mysql-server sudo apt-g ...

  4. 在Win7的IIS上搭建FTP服务及用户授权

    FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet上的双向文件传输(即文件的上传和下载).在网络上有 ...

  5. 在Win7的IIS上搭建FTP服务及用户授权——转载!!

    原文地址:http://blog.sina.com.cn/s/blog_6cccb1630100q0qg.html FTP服务 FTP是文件传输协议(File Transfer Protocol)的简 ...

  6. IIS web搭建之虚拟主机

    IIS web搭建之虚拟主机 虚拟目录:能将一个网站的文件分散存储在同一个计算机的不同目录和其他计算机. 使用虚拟目录的好处: 1.将数据分散保存到不同的磁盘或者计算机上,便于分别开发和维护. 2.当 ...

  7. mysql MHA架构搭建过程

    [环境介绍] 系统环境:Red Hat Enterprise Linux 7 + 5.7.18 + MHA version 0.57 系统 IP 主机名 备注 版本 xx系统 192.168.142. ...

  8. [转]OpenShift 集群搭建指南

    转自:http://www.cnblogs.com/zhangning/p/7251810.html OpenShift 集群搭建指南 v1.0 搭建Hyper-v虚拟机或物理机 配置物理机静态IP, ...

  9. CentOS6.8下MySQL MHA架构搭建笔记

    转载请注明出处,本文地址:http://www.cnblogs.com/ajiangg/p/6552855.html 以下是CentOS6.8下MySQL MHA架构搭建笔记 IP资源规划: 192. ...

随机推荐

  1. C++技术问题总结-第12篇 设计模式原则

    设计模式六大原则,參见http://www.uml.org.cn/sjms/201211023.asp. 1. 单一职责原则 定义:不要存在多于一个导致类变更的原因.通俗的说,即一个类仅仅负责一项职责 ...

  2. Android 滑动效果基础篇(四)—— Gallery + GridView

    Android系统自带一个GridView和Gallery两个控件,GridView网格显示,Gallery单个浏览,两者结合起来可以真正实现Gallery浏览图片效果. 本示例通过GridView和 ...

  3. iOS开发——UI_swift篇&TableView自定义聊天界面

    TableView自定义聊天界面   1,下面是一个放微信聊天界面的消息展示列表,实现的功能有: (1)消息可以是文本消息也可以是图片消息 (2)消息背景为气泡状图片,同时消息气泡可根据内容自适应大小 ...

  4. 解决Mac下SublimeLinter的Unsafe Characters警告

    Mac下编辑JS文件, 如果是中文字符的行会警告: This character may get silently deleted by one or more browsers. SublimeLi ...

  5. 在一个文件中有10G个整数,乱序排列,要求找出中位数

     题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数.内存限制为 2G.只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存). ...

  6. FTP服务器简易有效的访问方法

    访问FTP服务器传统的方法是使用专用的客户端程序,如CuteFTP,8UFTP等,也包括命令行的FTP客户端c:\windows\system32\ftp.exe程序. FTP服务器也有简易访问方法 ...

  7. Scala Java Error: value filter is not a member of *

    有时在Scala中调用Java的库,Java库会返回某些Java的集合或类型,必须经过一些转换才能正常使用. 否则有可能在编译的过程遇到这个错误. 错误字符串 下面是错误的主要信息. Scala Ja ...

  8. 如何在linux下解压缩rar和zip格式的文件压缩包

    转载:http://oldboy.blog.51cto.com/2561410/597515 使用apt-get安装:  sudo apt-get install  rar  zip rar使用: 将 ...

  9. 小白日记29:kali渗透测试之Web渗透-扫描工具-Vega

    WEB扫描工具-Vega 纯图形化界面,Java编写的开源web扫描器.两种工作模式:扫描模式和代理模式[主流扫描功能].用于爬站.处理表单,注入测试等.支持SSL:http://vega/ca.cr ...

  10. Android(java)学习笔记103:Map集合的获取功能

    package cn.itcast_01; import java.util.Collection; import java.util.HashMap; import java.util.Map; i ...