NTT DATA

DATA INSIGHT

NTTデータの「知見」と「先見」を社会へ届けるメディア

絞り込み検索
キーワードで探す
カテゴリで探す
サービスで探す
業種で探す
トピックで探す
キーワードで探す
カテゴリで探す
サービスで探す
業種で探す
トピックで探す
2019年12月2日技術ブログ

SONAR Testing ~テスト項目を作らない新たなテスト手法~

高品質なソフトウェアを開発するためには、ソフトウェアテストが重要である。しかし、現代のビジネス環境の変化に追従するためには、テストに費やすことのできる時間は限られている。このような問題に対し、当社が開発したテスト手法であるSONAR Testingを紹介する。

「探索的テスト」の抱える問題点

探索的テストとは、テストケースなどのドキュメントを作成せず、テストを実施しながら次に行うテスト内容を考えていく動的なテスト手法です。ドキュメントを作成しなくて済むため、テストの事前準備が減り、効率よくシステムの不具合を発見することができます。当社ではSession-based test managementという手法を活用し、探索的テストを使って多くのプロジェクトのテストを効率化しています(※1)
ソフトウェアテストにおいて、不具合を発見することは重要な目的の1つですが、そのほかの目的もあります。例えば、International Software Testing Qualification Board(ISTQB)のシラバスでは、ソフトウェアテストの目的として、「故障や欠陥を発見する」以外にもたくさんの目的が掲げられています(※2)。探索的テストは、テストケースなどのドキュメントを作成しないため、テストの詳細について客観的なレビューが行えず、「ステークホルダーが意志決定できる、特にテスト対象の品質レベルについての十分な情報を提供する」といったことは苦手にしています。

新たなテスト手法 SONAR Testing

そこで我々は、探索的テストの強みである「不具合を効果的に発見する」という特性は維持したまま、客観的なレビューを可能とする新たなテスト手法「SONAR Testing」を考案しました。SONAR Testingは、さながら魚群をソナーで探してから漁を行うように、探索的テストによって大まかに特定範囲の検証を行った上で、その結果を元に細部のテストを進めていきます。具体的には、以下の順にテストを進めていきます。

  1. 1.テストケース表は作らず、テスト観点とテスト対象の組み合わせに対して探索的テストを行う。
  2. 2.探索的テスト実施時に、専用のツールを起動しておくことで、テスターの操作内容が画面遷移図やシーケンス図といったレビュー可能なモデルとして取得される。
  3. 3.取得されたモデルを活用してテスターの操作内容をレビューし、テストに抜け漏れが発見された場合は、抜け漏れのあった箇所を補うようにテスターに指示する。

このようにテスト実行→モデルのレビュー→追加テストの指示→テスト実行…と繰り返していくことで、テストケース表などのドキュメントを作成することなく、観点に対して網羅的なテストを実現できます。取得されたモデルはそのまま証跡としても活用できるため、お客様に対して客観性が担保されたテストを実現できます。

図1:専用ツールで取得されるレビュー可能なモデルの例

図1:専用ツールで取得されるレビュー可能なモデルの例

SONAR Testingはソフトウェア品質シンポジウム 2019において、内容の優れた経験論文に送られる「SQiP Best Paper Effective Award」を受賞しています(※3)。当社はSONAR Testingを活用して、お客様に素早く、高品質なソフトウェアを提供していくことを目指しています。

※1

「探索的テスト」を活用して品質を高める
https://www.nttdata.com/jp/ja/data-insight/2014/072401/

※2

International Software Testing Qualifications Board(翻訳:Japan Software Testing Qualifications Board). ISTQBテスト技術者資格制度 Foundation Level シラバス 日本語版 Version 2018.J02, 14, 2018.

※3

ソフトウェア品質シンポジウム2019 開催レポート
https://www.juse.jp/sqip/symposium/report/

お問い合わせ