言うは易く行うは難し。言うは易く行うは難し。言うは易く行うは難し。分みなさんはソフトウェア開発においてどのようなテストを実施されているでしょうか。単体テスト,結合テスト,総合テストなど,さまざまなテストを実施されていることと思います。これらのテストをどのように計画・実行し,管理されているでしょうか。ソフトウェアの品質を向上・維持していくうえで,テストは非常に重要です。今回も前編に引き続き,その重要性が指摘されながら,あまり取り上げられることがなく,開発の花形である設計やプログラミングに比べて少々地味な役回りのテストについてお話したいと思います。Zephyr流のテストソフトウェアの品質を向上・維持していくうえで重要なテスト。前編でお話したテストを管理する難しさについては,みなさん実感されていることではなかったでしょうか。Management(以下,Zephyr)を紹介したところまででした。Zephyrを使ったテストのやり方を俯瞰してみましょう。テスト項目を作成します。これはJIRAにチケットを起票するのとほぼ同じ方法です(図1⁠)⁠。テストに記述する内容は,Excelシートを使ったテストと大きく変わりません。テスト項目,テストデータ,期待する結果を書いていきます。テスト項目を作成したら,次はテストの実施です。Zephyrはテストの規模に応じてさまざまなプロジェクトで活用できるように設計されています。テスト項目の作成Zephyrにはテストサイクルという考え方があります(図2⁠)⁠。テストサイクルはいくつかのテストをグループ分けできるものです。結合テストや総合テストといった単位でテストサイクルを定義するのが一般的な使い方です。Zephyrのテストサイクルテストを実施するときは,Zephyrのテスト項目を順番にテストしていき,成功すればPASS,失敗すればFAILにステータスを変えていきます(図3⁠)⁠。テストを実施し,テストのステータスを変えていくテスト担当者やテスト実行日時といった情報は自動的に登録されていきます。テスト件数の集計は自動で行われるため,テスト担当者はテストの実施に集中でき,テスト管理者はZephyrの画面を定期的にチェックすることで,いつでも最新のテスト実施状況を確認できます。不具合を見つけたときは,テスト項目と同じ画面からJIRAのチケットを起票すれば,テスト項目と不具合チケットの関連付けも自動的に行われます(図4⁠)⁠。テスト項目と不具合チケットの関連付けは自動的に行われる画面ショットやログファイルの添付が必要なときは,JIRAの標準機能でファイルを添付します。テスト担当者はテストの実施,不具合チケットの起票,再テストといった作業をすべてJIRA上ででき,追跡も簡単ですので,ストレスフリーな楽しい(?)テスト生活を送ることができます。開発者にとっては,どのようなテスト手順によってバグが発生したのかがわかるので,バグを再現するためにテスト担当者に何度もヒアリングすることがなくなると期待できます。Server(Gitリポジトリ)やBamboo(CIサーバ)を併用していれば,開発→ビルド→テストの追跡が一気通貫で可能になるので,管理者やリーダーにとって何よりの安心感を得られるはずです。その他の便利な機能として,既存のExcelファイルをインポートしてテストケースを作成したり,テストケースをエクスポートしてExcelで開いたりすることも可能です。テストサイクルを複製すれば,これまで作成・実施したテストケースを簡単に再利用できます。ZephyrのテストケースはJIRAのチケットそのものなので,JIRAでできること(検索,印刷,コメントなど)は基本的に何でも可能です。アイデア次第でさまざまな活用方法が考えられると思います。現場の声Zephyrは,ユーザから次の点が評価されています。結果の履歴が管理できるテストサイクルを利用して,グループ的に管理できるインポートツールによりExcelファイルからテストデータを登録できる1つのテストケース(JIRAのチケット)を複数のテストサイクルに利用でき,Excelのようにファイルが増えないテスト中に不具合が見つかったときは,Zephyrの画面からJIRAの不具合チケットを簡単に起票でき,自動的にリンクも設定されるテストの進捗状況をリアルタイムで確認できるテストに多くのメリットをもたらしてくれるZephyrですが,欠点や課題もあります。1つは学習コストです。直感的に使えるツールですが,操作性などが洗練されていくのはこれからかもしれません。今後に期待したいところです。JIRAからそろえる場合,必要なユーザ数分のライセンスとなると,それなりの費用になります。いえ,小規模なチーム向けには安価なライセンスも用意されており,評価版も利用できるので,興味を持たれた方はまず試していただきたいと思います。その他,ユーザからは次のような意見も寄せられています。Webアプリケーションのため,ネットワークにつながらない環境などで運用が難しい場合がある日本語訳がおかしいところがあるおわりにいかがでしたでしょうか。テスト管理ツールはこれまであまり重要視されてこなかったように感じます。品質の良いソフトウェアを作るためには重要なツールであり,取り組む価値のあるしくみではないでしょうか。今回の記事が,テスト工程について何らかの課題を抱えている読者のみなさんにとって少しでもヒントになれば光栄です。Expertsの盾には2015年のアジアパシフィック市場においてトップセラーを証す刻印が...日本だけでなく,アジア圏でもアトラシアン製品販売のトップエキスパートであるリックソフトのWebサイトでは,各アトラシアン製品の体験版を提供しているほか,アトラシアン製品専用のコミュニティも運営しています。Zephyr著者プロフィール廣田隆之(ひろたたかゆき)開発ツール好きが高じてリックソフトへ参加。主たる業務はインフラ,開発,コンサルなど。ソフトウェア開発の明日のために幅広く手を広げている毎日。好きな将棋の駒は「桂馬」。網野勉(あみのつとむ)2012年からWBSガントチャートの開発を担当。JavaのWebアプリケーション開発を主戦場に,最近はIaaSや機械学習にも足を伸ばす。好きな言葉は「勝ち点3」。大塚和彦(おおつかかずひこ)リックソフト株式会社マーケティング/ソリューション営業を担当。新しい技術・知識に出会い・習得するのが何より楽しい!好きなモノは「注文書」。言うは易く行うは難し。言うは易く行うは難し。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。