ソフトウェア開発の必須アイテム、BTSを使ってみよう

第3回Bugzillaの導入

今回からは、代表的な幾つかのBTSを細かく見て行きたいと思います。

まずはBugzillaを取り上げます。

図1 Bugzilla
図1 Bugzilla

Bugzillaとは

Bugzilla(バグジラ)は、Mozilla Foundationが開発、使用してきたWebベースのBTSです。元々Netscape Communicationsが社内で使ってきたシステムですが、1998年8月にNetscape Navigator(Webブラウザ)のソースコードを公開する際、mozilla.orgで使うツールとして公開されました。

Bugzilla公式サイト
URLhttp://www.bugzilla.org/

非常に多くのプロジェクトで利用されており、Installation Listのページでその一端を垣間見ることができます。

2007年5月に9年振りのメジャーバージョンアップがなされ、Bugzilla 3.0が公開されました。

デモ版はこちら以下のサイトで体験できます(英語版⁠⁠。

Bugzillaの特徴

Bugzillaは元々ブラウザのテストに用いられていたシステムですので、Webアプリケーション開発向きのBTSだと言えるでしょう。大規模案件での運用実績も魅力です。

細かい入力項目
バグ報告の記入項目は13あり、BTSの中でも比較的詳細です。
細かい権限設定が可能
不特定多数での利用を想定しており、バグ情報編集の可否や確認の可否などをユーザごとに細かく設定することができます。
プラットフォーム、OSといった設定項目がある
入力項目などはWeb環境を想定されているようで、プラットフォーム、OSなどの項目が設定されています。
ステータスにVERIFIEDがある
QA向けのステータスがあり、テスト担当者がいる場合や2重チェックを行っている組織に向いています。
移行可能なBTSが多い
Bugzillaからのデータ移行を考慮したり、移行用スクリプトが用意されているBTSが多くあります。Mantis、Trac、JIRAなどが該当します。

Bugzillaの弱点

代表的なBTSでありながら、日本での人気は海外よりやや低めかもしれません。幾つか気になる点も挙げてみたいと思います。

とっつきにくいデザイン
デザインが地味で見づらいので、ややとっつきにくいという声も耳にします。
軽めの用途では向かない
利点と裏腹ですが、項目などが細かい代わりに、軽めの用途では取り扱いが面倒に感じるかもしれません。
レポート機能が弱め
デザインの地味さとも関連しますが、レポート出力も魅力的ではありません。
日本のコミュニティがドライ?
Bugzillaは日本語化されていますが、硬い表現が目立ったり、そもそも日本語の情報が少ないのも気になります。

アドオン・連携するツールなど

Bugzillaにはさまざまなアドオンがありますが、残念ながら日本語化されているものは少ないです。幾つか興味深いものをご紹介してみます。ツール一覧はMozillaWikiのBugzilla:Addonsのページをご覧ください。

TestLink
TestLinkはテストケース・マネジメントツールです。テストケースとバグ修正を結びつけることで管理レベルを高めることがます。BugzillaおよびMANTIS、JIRAへの連携が可能となっています。
Buggybar
Firefoxのアドオンで、サイドバーからBugzillaのバグ一覧を表示することができます。残念ながら日本語対応されていませんが、バグ修正が快適になるアドオンです。
Eclipse
Eclipse3.3ではMylynを介してBTSと連携できるようになっており、Bugzillaへのコネクタも標準でインストールされています。開発にEclipseを利用している方は導入を検討してみてください。

Linuxサーバへのインストール

Bugzillaの日本語版の配布はBugzilla-jpで行われており、利用できる最新のバージョンはBugzilla-ja 3.0となっています。

Bugzilla-jaとはにてSubversionレポジトリが公開されています。

サーバには以下のものがインストールされていることが必要です。
Perl 5.8.0以降
DB MySQL4.1.2以降かPostgreSQL8.0以降が利用できます。
Webサーバ Apacheが推奨されています。
MTA Sendmail8.7以降と互換のものを使うことができます。

インストールするには、まずレポジトリからソースを取得します。Apacheで公開しますので、都合の良い場所にコピーしてください。

図2
# cd /usr/local/src
# svn co http://services.mozilla.gr.jp/svn/bugzilla/3.0/tags/3.0.4-ja.8/
# cp -r 3.0.4-ja.8/ /usr/local/bugzilla

checksetup.plを動かして、必要なPerlのモジュールがあるか確認します。足りないモジュールがあればCPANから追加するよう言われます。

図3
# cd /usr/local/bugzilla/
# checksetup.pl --check-modules

モジュールが揃ったら、checksetup.plをオプションなしで実行します。するとlocalconfigが生成されます。

図4
# checksetup.pl

次に生成されたlocalconfigを編集します。お使いのDBに合わせて設定してください。

図5
# vi localconfig
リスト1
$db_user = 'hoge'; #DBのユーザ
$db_pass = 'hoge'; #DBのパスワード

設定が終わったらDBでBugzilla用のユーザを作成します。その後、もう一度checksetup.plを実行します。

図6
# checksetup.pl

今度は管理者のメールアドレスを求められますので、入力します。メールアドレスがIDになります。

図7
Enter the e-mail address of the administrator:

次はApacheの設定です。httpd.confを編集します。

図8
# vi /etc/httpd/conf/httpd.conf

バグジラのディレクトリに向けた後、以下も追記します。

リスト2
PerlSwitches -I/usr/local/bugzilla -w -T
PerlConfigRequire /usr/local/bugzilla/mod_perl.pl

最後にApacheを再起動します。

図9
# /etc/init.d/httpd restart
Windowsで動かしてみるには
手元で試用する場合や、サーバを立てずに社内LANで共有して利用する場合は、Windows+XAMPPの環境にインストールすると良いでしょう⁠。
※)
原稿執筆時点のXAMPPのPerlアドオンPerl 5.10.0-2.2.9-pl1を使用すると問題が出ますので、ActivePerlを別途インストールしてください。

まとめ

今回はBugzillaの特徴とインストールについてご案内しました。全体的に居住まいの正しいBTSですから、Bugzillaの取り扱いを覚えることでバグ修正という作業への理解も深くなるでしょう。広く利用実績があることは導入の際にもアピールポイントとなるかもしれません。

次回は、Mantisについてご案内したいと思います。

おすすめ記事

記事・ニュース一覧