Bugzilla 2.19.2 试用手记
bugzilla 2.19试用版已经发布很久了。但是我们还是继续一直在使用2.18,一是不知道2.19版是否稳定,二是2.18版的已经有wfifi的汉化模板可以用。但是现在公司开始在评估是否购买jira了。于是粗略比较了一下jira和bugzilla。
初看了一下jira,和bugzilla各有特色,比较突出的感觉到的有:
1 jira号称是个IMS(issue management system),也就是说,它不但可以管理bug,还可以管理其他种类的issue比如task,而且自己可以创建新类型的issue。相比之下bugzilla却是个DMS(defect management system),它的眼中一切都是bug。虽然最终可以实现的功能没有大的差别,但是却从概念上让人感觉到他们之间的差异。
2 jira支持subscribe,也就是订阅指定的bug信息,bugzilla到2.18版还没有发现这样的功能。
3 bugzilla支持生成chart,jira似乎没有这个功能。
4 bugzilla现在已经有汉化包,jira支持的大概8种左右的语言里面,没有发现中文。不过作为一个外企,我们不需要一个界面汉化的DMS
5 jira的企业版据说还可以自己定义issue的处理流程,不过好像要改源码呵呵。
6 jira的权限系统做得比bugzilla细致。
7 jira要花money
为了更加公平的比较bugzilla和jira,上网吓了最新的bugzilla2.19.2版,比其2.19.1版没有多实现多少特性,但是据说改了些bug。与2.18版比起来,最突出的是增加了一个类似jira的subscribe的功能,叫Whining。此外提供了用户名下拉框,以后可以不用敲assignee了(其实我早就自己实现了相同的功能,我的QA其实没怎么敲过assignee),生成报表使用的条件可以反转。还有写环境变量和报表参数之类的特性看起来和我关系不大。不过第一个note没看明白:
A higher level of categorization (departments, locations, etc...) is now available for bug reports
这应该是说做report的时候提供了更高级的分类的意思吧?但是与之关联的bug里面却说:
It would be nice if one could group products into categories(departments, groups, organization, etc.)...
这应该是说创建product的时候可以分类的意思。
因为原来服务器上已经安装过bugzilla2.18,安装2.19的时候容易的多了。在apache的发布目录下新建了一个newbugzilla目录,把下载的包解压到里面去。然后进而命令行状态下,perl checksetup.pl,验证了一下使用的包全部争取安装,并且生成了localconfig文件。打开localconfig,把$db_pass填上,重新perl checksetup.pl。安装脚本开始升级数据库(新版本的bugzilla需要用到一些新的表或者在旧表里面加些新的字段),顺利通过。
打开浏览器访问newbugzilla,除了没有中文界面之外一切如常,进去看assignee还是文本框,Whining功能也找不着,奇怪了。
进入目录里面搜相关的文件,在根目录下发现了whine.pl。既然没有链接,就直接敲地址访问它试试?从ie输入它的地址,出来一个错误页面:no permission。
原来新的功能要关联到新的group才有权使用。进用户关联把所有的角色都先加给自己先。回到主页刷新一下,果然,处来了一个whining链接,点开一看,爽!
用户名下拉框的问题,在2.19.1版的release notes上面关联到一个bug。过去看这个bug的说明和附件,说是要加一段代码在\template\en\default\global下面,叫userselect.html.tmpl。在本地一找,这个文件已经有了,可是为什么用户没有变成下拉列表呢?打开userselect.html.tmpl一看:
[% IF Param("usemenuforusers") %]
......
原来要读到usemenuforusers这个参数为真的时候才显示为下拉框的。进parameter里面,找到usemenuforusers这一项,改为true,回到创建bug页面,用户框果然变成下拉框了。
再找找A higher level of categorization 在哪里?找了半天没找到categories之类的东西,不过在parameter里面发现了一个新东西:useclassification。把这个参数打开(on)之后,菜单多了一项 Classifications ,大概就是指的这个东西了。在Classifications 中可以建立产品分类,然后再在产品分类中建立产品,或者把旧的产品关联到创建的分类中(没有关联的产品全部属于Unclassified类)。这样在创建bug的时候就要先选分类,再选产品,再选组件。对产品线比较复杂的单位,这样的功能还是有点讨好的。