• ホーム
  • 品質向上Blog
  • テストシナリオとは|考え方や作成方法・網羅するためのポイントを解説

テストシナリオとは|考え方や作成方法・網羅するためのポイントを解説

ソフトウェアテスト

テストシナリオとは

「テストシナリオ」は、テストケースの集合的なセットであり、一連のテストの流れをパターン化したものです。プログラムの潜在的な欠陥を特定するために、プロジェクトのプラス面とマイナス面を決定して、考えられる結果を評価するシナリオの一種です。

ちなみに「シナリオテスト」は、システム開発のプロセスで必要なテストそのものを言い、「テストシナリオ」は各テストにおいて、テストを正しく行うためのテストの道筋を立てることを言います。

また、混同しやすい用語として「テストケース」があります。テストケースは、ソフトウェアテストを実行する手順や利用するデータ、条件、期待される結果などを文章化したものを指しますので、しっかりと区別しましょう。

テストケースのBlogはこちら

テスト計画から実施までのプロセス

テストシナリオが何かイメージしやすいよう、テスト計画からテスト実施までのプロセスをステップでご紹介します。

【テストのプロセス】

1. テスト計画
まずテスト全体の方針や概要(目的、対象範囲、実施方法、テスト環境、スケジュールなど)をまとめます。
開発後に起こりうるリスクを想定し、実施するテストで保証されるべきポイントとその優先順位や重要度をもとに、どのようなテストを何のために行うか決定します。

2. テスト設計
次に、テスト計画に基づいて実際どんなテスト内容で行うのか作業内容を明確にします。テスト目的やテスト条件に見合うようなテストパターンを想定し、テスト技法を用いて適切なパターンとケース数を採用します。ここでテストシナリオを決定し、仕様書に記載をします。

3. テスト実施
設計・実装を経て作成したテストケースを、テスト環境下でテスト仕様書に基づいて行います。テストケースに沿ってシステムを操作し、期待値の確認と画面キャプチャや出力データなどの結果を確認できる証跡(エビデンス)を取得します。

qs_cta-btn_700-150.pngのサムネイル画像

シナリオテストにおけるシナリオの作成方法

この章では、シナリオを作成するために一般的に考慮していただきたいことや、シナリオの作り方をステップでご紹介します。

この章では、シナリオを作成するために一般的に考慮していただきたいことや、シナリオの作り方をステップでご紹介します。

順番に、それぞれ詳しく解説します。

テスト方針を決める

まずは、シナリオテストの目的や前提条件といったテスト方針を決めことから始めます。
これらを設定することで、全体像を把握でき、テストすべき範囲が明確になります。テストプロセス全体を明確にすることで、「設計者ごとに、設計やレビューにかかる時間が異なる」といった、テスト設計者によるブレを軽減できるという利点があります。

ユーザーの心理&行動パターンを想定する

上記のテスト方針の範囲内で、ユーザーの心理&行動パターンを想定すると良いでしょう。
ユーザーのニーズ、システム利用時の行動&心理パターンがわかれば、様々なバリエーションのテストが可能になります。

ユーザーの行動過程と心理状態を想定することで、ユーザー満足度を向上させるためのシナリオテストとしての質が向上します。行動を列挙する際は、ユーザーが達成したいことや、それを実行する際の行動バリエーションを考えて網羅していきましょう。
その結果、ユーザー満足度を上げるためのシナリオテストが完成します。

テストすべき対象を洗いだす

最後に、ユーザーの行動&心理パターンに応じて、操作内容を書き出していきます。
ここでは、はじめに想定したテストケースにおける操作内容を書き出すところから始めます。

複数の組み合わせが発生するテストでは、あらかじめ対応表を作成してからテストを行うのが良いでしょう。こうすることで、組み合わせの漏れを防ぐことができます。
加えて、テスト内容を考える際には、ユーザーが達成したいことだけでなく、ユーザー満足度をさげる可能性のある項目も洗いだすことも重要になります。

qs_cta-btn_700-150.pngのサムネイル画像

シナリオテストのシナリオは網羅性がポイント

シナリオテストにおけるシナリオは、ユーザーが達成したいこと、そのバリエーション、それを妨げる事象を洗い出し、できるかぎり網羅することがとても大事です。

【テストシナリオを網羅するポイント】

  • 時系列でシナリオを設定する
  • 条件別でシナリオを設定する
  • 優先度の高いものから設定する

上記の3つのポイントについて、ひとつずつ解説します。

時系列でシナリオを設定する

時系列でシナリオ設定するとは、通常業務で想定される処理の流れを意識したシナリオにするということです。

時系列でシナリオ設定するとは、通常業務で想定される処理の流れを意識したシナリオにするということです。

このような時間経過によるステータスの変更が反映されるか、一連の操作に使いにくい点やわかりにくい点がないかを設定していくと漏れが少ないです。実際に起こりうる流れであること、境界値の前後を確認できるようにすることを意識すると良いでしょう。

条件別でシナリオを設定する

条件別のシナリオ設定とは、様々な組合せを網羅することを意識したシナリオのことです。

「各区分・条件を組み合わせたデータを作成した際、集計内容に不具合はないか」「各区分・条件を組み合わせたデータを変更した際、集計内容に不具合はないか」ということを考慮しておきましょう。

条件別のシナリオは一から考えるよりも、クライアントの要件や過去のユーザーの捜査事例を参考にすることをおすすめします。

優先度の高いものから設定する

顧客の目的達成のためにも、優先度の高いものから設定をしましょう。

条件別のシナリオは無数にあります。しかしながらテスト工数は有限であり、また納期遵守も求められます。すべてのバランスを保つためには、優先度付けを行い、絞り込みを行う必要があります。優先度の算出は、ユーザーの利用頻度の高い項目や、変更部分の影響範囲から算出するのが自然な流れです。

全部を網羅するに越したことはありませんが、すべてをテストできないケースは取捨選択しましょう。

まとめ

いかがでしたでしょうか?

テストケースはソフトウェアテストでも重要な物のひとつであり、テストシナリオを構築および評価して、ソフトウェアまたはアプリケーションが問題なく動作することを確認するのに非常に役立ちます。

テストシナリオを設定する際に、すべてを網羅することは難しいといえます。しかし、ポイントをおさえれば、様々なパターンに対応したシナリオを作成することができます。
この記事を参考に、効果的なテストシナリオの設定を進めていただけば幸いです。

qs_cta-btn_700-150.pngのサムネイル画像

この記事を書いた人

テクバンは様々なICT導入を進めることにより顧客のDXを推進し売上、業務改善を推し進めます。

同じカテゴリーの記事

ソフトウェアテスト/
テスト自動化を行う
テクバンとは

  • ヒアリング
    コンサルティング

    当社在籍のコンサルタントが徹底したヒアリングを実施。現状の課題や製品特性を洗い出します。お客様の問題解決・品質向上へ向け。効果的なサービスをご提案します。

  • システム開発・アプリ導入
    インフラ環境設備

    要件定義に基づき、1,000名ほどのエンジニアから案件に合った最適な人員をアサインします。開発からアプリ導入、インフラ設備、品質保証まで全てお任せください。

  • 運用・サポート

    サービス導⼊後に発⽣するシステム運⽤やサポートなども、専⾨企業ならではの⾼いスキルで安定運⽤を実現。お客様企業にて運⽤が定着化するまでご⽀援いたします。

保有資格
  • Adobe Partner Connection リセラープログラム レジスタード
  • Cisco認定
    プレミアパートナー
  • Oracle PartnerNetwork SELL /
    LICENSE & HARDWARE
  • Microsoft Gold
    コンピテンシーパートナー
  • VMware Partner Connect Principal
  • ソフトウェアテストの内容が知りたい
  • テスト自動化の仕組みが知りたい
資料ダウンロード
ソフトウェアテストやテスト自動化の最新情報をダウンロードできます
PDF資料にて当社のサービスメニュー、当社ご紹介資料もございます
ソフトウェアテスト
テスト自動化
品質向上BLOG