連載
» 2009年10月23日 00時00分 公開

エンジニアがお薦めする 現場で使えるツール10選(5):脱Excel! TestLinkでアジャイルにテストをする (6/6)

[あきぴー,@IT]
前のページへ 1|2|3|4|5|6       

【5】TestLink運用後

 TestLinkを運用後、筆者が気付いたことについて述べてみる。

【5−1】テスト工程の進ちょくを見える化できた

 TestLinkによって、テストケースの実施数・成功数・失敗数・ブロック数をリアルタイムに把握できるので、テストの遅延をすぐに発見しやすく、早期の是正対策を取りやすくなった。テスターも自分のテスト実施結果を常に確認できるので、作業しやすくなったようだ。

【5−2】テスト工程を複数のテスト計画へ分割して順次テストしていく

 TestLinkのテスト計画をXPのイテレーションのように運用するには、テスト計画の作業工数を2〜4週間のサイズに収めることが重要だ。理由は、テスト計画に含まれるテストケース数が多すぎる場合、バグ修正やバグ検証の工数も考慮すると、すぐに工数があふれてしまうからだ。

 TestLinkのテストケースにカスタムフィールドを用意して、各テストケースに予定工数を記入しておいたとしよう。すると、テスト計画の総予定工数を計算できるから、テスト計画を完了できるテスト工数の上限を超えている場合、テスト計画を立てた時点でテストが終わらないプロジェクトもあり得る。

 つまり、テスターが少なすぎたり、期間が短すぎたり、工数がもともと不足した状況でテストケースを作りすぎた場合、もはや未テストのままリリースせざるを得ない危険な状況なのだ。

 テストケースが数千もある場合、テスト計画をせいぜい数百のテストケースをグループ化して順次テストしていく運用がよいと思う。すなわち、テスト計画をアジャイル開発のイテレーション計画に含めることで、テスト工程のプロジェクト管理を扱いやすくしているのだ。

【5−3】TestLinkによるテスト管理を経験して、テスト戦略の重要性をようやく理解できた

 TestLinkによるテスト戦略では、ブロックを上手に使って、ブロッキングバグとみなしバグを厳密に区別する運用が重要だ。一般に、テストに失敗してバグが増えると、ブロックするテストケースは飛躍的に増える。

 すると、テストケースの失敗率がある上限値を超えると、テスト計画に含まれるすべてのテストケースがブロックになってしまい、テスト不能になる状況が考えられる。

 つまり、テスト不能の状況は、すべてのブロッキングバグを最優先に修正しなければ、テストしても無駄な状態を意味している。

 結局、テストよりもバグ修正を優先しなければ、テストすら終わらないのだ。バグ修正よりも仕様変更を優先しても、みなしバグが多発した状態で機能追加しても、状況は一段と悪化するだけだ。

 従って、どのブロッキングバグを最優先で修正して再テストするか、という作業の優先順位付けが重要になってくる。

 『ソフトウェアでビジネスに勝つ』(ハンフリー著)では「品質が良ければテスト工程が短縮されてスケジュールは前倒しになる」と書かれているが、おそらく上記の内容を指しているのだと思う。

【6】まとめ

 TestLinkを運用して気付いたことは、Redmineによるチケット駆動開発(参考:脱Excel! Redmineでアジャイル開発を楽々管理)と組み合わせれば、RedmineとTestLinkの2つのツールでソフトウェア開発のすべての工程における進ちょく管理やタスク管理をカバーできることだ。

 Redmineでは要件定義から開発・単体テストまでのタスク管理、TestLinkでは結合テストから受け入れテストまでのテスト管理と使い分ければ、ソフトウェア開発のすべての作業をWeb上でリアルタイムにモニタリングできる。この運用方法によって、作業や進ちょくに関する情報共有が非常にスムーズになる。

 Redmineと同様に、テストケースの品質さえ良ければ、TestLinkの優れたテスト管理機能のおかげで、テスト工程の進ちょくや品質の結果をバックグラウンドで自動集計してくれる。テスターは進ちょく報告を気にしないで作業できるし、管理者はTestLinkの集計結果を基にテスト管理の意思決定が楽になる。

 また、RedmineやTestLinkの集計結果(メトリクス)から、ソフトウェア工学に関する知見が得られるのも利点の1つだ。ぜひ、RedmineとTestLinkを使いこなして、従来のKKD(勘、経験、度胸)によるプロジェクト管理から、ソフトウェア工学に基づいたプロジェクト管理へ脱皮しよう。

筆者プロフィール

あきぴー

業務系Webシステムの開発部隊に所属するエンジニア。プログラム開発からプロジェクト管理まで何でも担当している。XP(eXtreme Programming)を代表とするアジャイル開発に興味を持ち、アジャイル開発によるプロセス改善を目指している。主にXPJUG関西やSEA関西、TEF関西などのコミュニティを中心に活動をしている。 ・XPJUG関西(日本XPユーザーグループ関西)


前のページへ 1|2|3|4|5|6       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。