現在のテスト管理ツールは,大きく二つのタイプに分類できる。一つは「管理者支援型」,もう一つは「開発者支援型」だ(図1)。

図1●自動テストの主な実行管理機能
図1●テスト管理ツールの二つのタイプ
従来のテスト管理ツールは,マーキュリー・インタラクティブ・ジャパンやエンピレックスのツールに代表されるように,機能テストや回帰テストなど機能要件のテストに重点を置いた「!)管理者支援型」のタイプが多かった。だが,ここにきてマイクロソフトや日本IBMなどのツールのように,単体テストや負荷テストなど,コード品質や非機能要件もカバーする「!)開発者支援型」のタイプが出てきた
[画像のクリックで拡大表示]

[選ぶ]分析/集計機能重視か,ツールとの連携を重視か

 管理者支援型は,機能テストや回帰テストといった「機能要件」に対するテストに重点を置いた製品。該当するのは,e-Manager EnterpriseやMercury Quality Centerなどだ。これらのツールは情報システム部門の品質監査チームや運用チーム,あるいは元請けのベンダーなど,開発が完了したシステムを受け入れる側が利用することが多い。「利用者がシステムを使う視点でテストを実行/管理するツール」(マーキュリー・インタラクティブ・ジャパン マーケティング部 ディレクターの河野真一氏)である。

 管理者支援型は,多様な分析レポーティング機能や品質指標を一覧できるダッシュボード機能を持つのが特徴である。例えば,e-Manager Enterpriseのレポート数は前述のように50種類,Mercury Quality Centerのレポート数は42種類と,他のツールに比べてこれらは格段に多い。

 Mercury Quality Centerは,ダッシュボード機能を強化している(図2)。複数プロジェクトにおけるテストの進捗や不具合状況を一覧できるほか,各項目の危険度を,赤(危険),黄(注意),緑(安全)の3色のインジケータで確認することも可能だ。

図2●集計/分析結果を一覧できるダッシュボードの例
図2●集計/分析結果を一覧できるダッシュボードの例
画面は「Mercury Quality Center」(マーキュリー・インタラクティブ・ジャパン)のダッシュボード。テストの進捗や不具合数の危険度を3色で示すインジケータや,要件のステータス別の進捗状況をパーセンテージで示すバーなどを表示する。ダッシュボードに表示する内容を変更したり,各グラフをPDFファイルで出力することも可能である
[画像のクリックで拡大表示]

他ツールとの連携に重点

 一方,開発者支援型は,機能要件だけでなく,コード品質や非機能要件についてもカバーするテスト管理ツールである。主に情報システム部門の開発チームや,ベンダーの開発チームへの導入に向く。該当する製品は,IBM Rational ClearQuestやマイクロソフトの Visual Studio 2005 Team Foundation Serverなど。

 こうしたツールは,単体テストや負荷テストを実施する自動テストツールや,成果物を管理する構成管理ツールなど,より多くの開発支援ツールと連携させることができる。

 例えば,マイクロソフトの Visual Studio 2005 Team Foundation Serverは,コードや設計書などの成果物の管理も可能だ。自動テストツールを連携させて「チェックイン・ポリシー」と呼ぶ機能を使えば,「単体テストが成功しないコードは本体のソフトにビルドできない」といった制約をシステム的に設定できる。「様々なツールを連携させれば,開発現場に確実なテストを定着させることが可能」と,マイクロソフトの岩出智行氏(デベロッパービジネス本部 プロダクトマーケティンググループ シニアプロダクトマネージャ)はツール連携の重要性を説く。

 IBM Rational ClearQuestは,自社の自動テストツールのほか,「JUnit」や「Eclipse Test and Performance Tools Platform(Eclipse TPTP)」といったオープンソースの単体テストツールやテスティング・フレームワークとの連携もサポートする(図3)。成果物の構成管理は「IBM Rational ClearCase」で行い,要件やテストケースと各成果物をひも付けて管理できる。ビルド/リリース管理ツール「IBM Rational Build Forge」を連携させれば,テスト情報をビルドやリリース時の判定基準として活用できる。

図3●テスト管理ツールを中核に開発支援ツールを連携
図3●テスト管理ツールを中核に開発支援ツールを連携
日本IBMの「IBM Rational ClearQuest」の例を示した。要件定義ツールを連携させて要件を登録/修正したり,ビルド/リリース管理ツールを連携させてテスト結果に基づくビルド/リリース判定を実施したりできる。構成管理ツールを連携させれば,テスト管理ツールに格納する要件やテストケース,不具合情報と各成果物を関連付けられる
[画像のクリックで拡大表示]

 このほか,ボーランドの「Borland SilkCentral Test Manager」と,日本コンピュウェアの「QADirector」も,開発者支援型と言える(ともに英語版のみ)。Borland SilkCentral Test Managerは従来,管理者支援型に近かったが,ボーランドによる同製品の買収で,開発者支援型に変わりそうだ。ボーランドが持つ要件定義ツールの「Borland Caliber」や構成管理ツールの「Borland StarTeam」などとの連携が計画されているためである。

 QADirectorについても,同社の単体テストツール「DevPartner Studio」や,負荷テストツール「QALoad」との連携をサポートするなど,テスト工程全体をカバーする開発者支援型である。単体テストツールやバグトラッキング・ツールを同梱するスイート製品「QACenter Enterprise Edition」も提供している。