みなさんはソフトウェア開発においてどのようなテストを実施されているでしょうか。単体テスト、結合テスト、総合テストなど、さまざまなテストを実施されていることと思います。では、これらのテストをどのように計画・実行し、管理されているでしょうか。
ソフトウェアの品質を向上・維持していくうえで、テストは非常に重要です。今回も前編 に引き続き、その重要性が指摘されながら、あまり取り上げられることがなく、開発の花形である設計やプログラミングに比べて少々地味な役回りのテストについてお話したいと思います。
Zephyr流のテスト
ソフトウェアの品質を向上・維持していくうえで重要なテスト。前編でお話したテストを管理する難しさについては、みなさん実感されていることではなかったでしょうか。前編は、そのテスト管理の手助けとなるツールとしてZephyr for - JIRA Test Management (以下、Zephyr)を紹介したところまででした。
では、Zephyrを使ったテストのやり方を俯瞰してみましょう。まずは、テスト項目を作成します。これはJIRA にチケットを起票するのとほぼ同じ方法です(図1 ) 。テストに記述する内容は、Excelシートを使ったテストと大きく変わりません。テスト項目、テストデータ、期待する結果を書いていきます。
テスト項目を作成したら、次はテストの実施です。Zephyrはテストの規模に応じてさまざまなプロジェクトで活用できるように設計されています。
図1 テスト項目の作成
Zephyrにはテストサイクルという考え方があります(図2 ) 。テストサイクルはいくつかのテストをグループ分けできるものです。結合テストや総合テストといった単位でテストサイクルを定義するのが一般的な使い方です。
図2 Zephyrのテストサイクル
テストを実施するときは、Zephyrのテスト項目を順番にテストしていき、成功すればPASS、失敗すればFAILにステータスを変えていきます(図3 ) 。
図3 テストを実施し、テストのステータスを変えていく
テスト担当者やテスト実行日時といった情報は自動的に登録されていきます。テスト件数の集計は自動で行われるため、テスト担当者はテストの実施に集中でき、テスト管理者はZephyrの画面を定期的にチェックすることで、いつでも最新のテスト実施状況を確認できます。
不具合を見つけたときは、テスト項目と同じ画面からJIRAのチケットを起票すれば、テスト項目と不具合チケットの関連付けも自動的に行われます(図4 ) 。
図4 テスト項目と不具合チケットの関連付けは自動的に行われる
画面ショットやログファイルの添付が必要なときは、JIRAの標準機能でファイルを添付します。テスト担当者はテストの実施、不具合チケットの起票、再テストといった作業をすべてJIRA上ででき、追跡も簡単ですので、ストレスフリーな楽しい(?)テスト生活を送ることができます。
開発者にとっては、どのようなテスト手順によってバグが発生したのかがわかるので、バグを再現するためにテスト担当者に何度もヒアリングすることがなくなると期待できます。JIRAのファミリー製品であるBitbucket Server (Gitリポジトリ)やBamboo (CIサーバ)を併用していれば、開発→ビルド→テストの追跡が一気通貫で可能になるので、管理者やリーダーにとって何よりの安心感を得られるはずです。
その他の便利な機能として、既存のExcelファイルをインポートしてテストケースを作成したり、テストケースをエクスポートしてExcelで開いたりすることも可能です。また、テストサイクルを複製すれば、これまで作成・実施したテストケースを簡単に再利用できます。
ZephyrのテストケースはJIRAのチケットそのものなので、JIRAでできること(検索、印刷、コメントなど)は基本的に何でも可能です。アイデア次第でさまざまな活用方法が考えられると思います。
現場の声
Zephyrは、ユーザから次の点が評価されています。
結果の履歴が管理できる
テストサイクルを利用して、グループ的に管理できる
インポートツールによりExcelファイルからテストデータを登録できる
1つのテストケース(JIRAのチケット)を複数のテストサイクルに利用でき、Excelのようにファイルが増えない
テスト中に不具合が見つかったときは、Zephyrの画面からJIRAの不具合チケットを簡単に起票でき、自動的にリンクも設定される
テストの進捗状況をリアルタイムで確認できる
テストに多くのメリットをもたらしてくれるZephyrですが、欠点や課題もあります。1つは学習コストです。直感的に使えるツールですが、操作性などが洗練されていくのはこれからかもしれません。今後に期待したいところです。2つめは価格です。JIRAからそろえる場合、必要なユーザ数分のライセンスとなると、それなりの費用になります。とはいえ、小規模なチーム向けには安価なライセンスも用意されており、評価版も利用できるので、興味を持たれた方はまず試していただきたいと思います。
その他、ユーザからは次のような意見も寄せられています。
Webアプリケーションのため、ネットワークにつながらない環境などで運用が難しい場合がある
日本語訳がおかしいところがある
おわりに
いかがでしたでしょうか。テスト管理ツールはこれまであまり重要視されてこなかったように感じます。しかし、品質の良いソフトウェアを作るためには重要なツールであり、取り組む価値のあるしくみではないでしょうか。今回の記事が、テスト工程について何らかの課題を抱えている読者のみなさんにとって少しでもヒントになれば光栄です。
Atlassian Expertsの盾には 2015年のアジアパシフィック市場において トップセラーを証す刻印が…
日本だけでなく、アジア圏でもアトラシアン製品販売のトップエキスパートであるリックソフトのWebサイトでは、各アトラシアン製品の体験版を提供しているほか、アトラシアン製品専用のコミュニティも運営しています。まずはアクセスしてみては!
リックソフトJIRAデモ環境
https://www.ricksoft.jp/demo/