メインコンテンツへスキップ
Toolsbase Logo

状態遷移テスト支援

状態遷移表をリアルタイムで検証し、カバレッジ付きのテストシナリオを自動生成するツール。状態遷移テスト設計を効率化します。

最終更新:

使い方

使い方を開く
  1. 1

    状態とイベントを定義

    状態とイベントを1行ずつ入力し、初期状態を設定します。

  2. 2

    遷移を記述

    遷移元状態・イベント・ガード条件・遷移先状態を行単位で追加します。

  3. 3

    警告とテストケースを確認

    検出された問題、カバレッジ、生成テストシナリオを確認して出力します。

状態機械入力

入力を変更すると検証・カバレッジ・テストケースがリアルタイムで更新されます。

検証結果

検出された問題数: 11

遷移漏れ(状態 + イベント)

  • Idle + approve
  • Idle + reject
  • Idle + reset
  • Submitted + submit
  • Submitted + reset
  • Approved + submit
  • Approved + approve
  • Approved + reject
  • Rejected + submit
  • Rejected + approve
  • Rejected + reject

カバレッジ

状態カバレッジ

100%

到達状態数: 4 / 4

遷移カバレッジ

31.3%

網羅遷移数: 5 / 16

条件カバレッジ

100%

網羅条件結果数: 4 / 4

生成テストケース

合計

20

正常系

5

異常系

11

境界値

4

ID種別前提状態操作期待結果補足
TC-001正常系Idlesubmit遷移: Submitted-
TC-002正常系Submittedapprove (reviewerApproved: true)遷移: Approvedガード成立パス
TC-003正常系Submittedreject (reviewerRejected: true)遷移: Rejectedガード成立パス
TC-004正常系Approvedreset遷移: Idle-
TC-005正常系Rejectedreset遷移: Idle-
TC-006異常系Idleapproveエラー: Idle遷移未定義
TC-007異常系Idlerejectエラー: Idle遷移未定義
TC-008異常系Idleresetエラー: Idle遷移未定義
TC-009異常系Submittedsubmitエラー: Submitted遷移未定義
TC-010異常系Submittedresetエラー: Submitted遷移未定義
TC-011異常系Approvedsubmitエラー: Approved遷移未定義
TC-012異常系Approvedapproveエラー: Approved遷移未定義
TC-013異常系Approvedrejectエラー: Approved遷移未定義
TC-014異常系Rejectedsubmitエラー: Rejected遷移未定義
TC-015異常系Rejectedapproveエラー: Rejected遷移未定義
TC-016異常系Rejectedrejectエラー: Rejected遷移未定義
TC-017境界値Submittedapprove (reviewerApproved: true)遷移: Approvedガード成立パス
TC-018境界値Submittedapprove (reviewerApproved: false)遷移不可: Submittedガード不成立パス
TC-019境界値Submittedreject (reviewerRejected: true)遷移: Rejectedガード成立パス
TC-020境界値Submittedreject (reviewerRejected: false)遷移不可: Submittedガード不成立パス

状態遷移テスト支援ツールについて

状態遷移テストは、システムを有限状態マシン(状態・イベント・遷移)としてモデル化し、すべての有効な遷移を検証するブラックボックステスト技法です。本ツールでは状態・イベント・遷移を入力するだけで、未到達状態・孤立状態・遷移漏れ・重複遷移・不正遷移をリアルタイムに検出し、正常系・異常系・境界値のテストケースを自動生成します。ガード条件付き遷移は真偽両パスが自動展開されます。状態・遷移・条件のカバレッジをまとめて確認し、生成したテストケースをCSV/Markdownでコピー・ダウンロードしてそのまま活用できます。

主な機能

  • 未到達状態・孤立状態・遷移漏れ・重複遷移・不正遷移をリアルタイム検出
  • 正常系・異常系・境界値のテストケースを自動生成(ガード条件対応)
  • 状態カバレッジ・遷移カバレッジ・条件カバレッジを同時表示
  • テストケースをCSV/Markdownでコピー・ダウンロード
  • ガード条件付き遷移の真偽両パスを自動展開してテストケース生成

活用シーン

  • 注文処理・認証フロー・申請承認ワークフローのテスト設計
  • スプリント計画前に状態遷移モデルをレビューして実装前に遷移漏れを検出
  • ユーザーアカウントのライフサイクル(有効・停止・削除)の未到達状態を特定
  • TestRailやJiraにインポートできるテストケース一覧の作成
  • QAエンジニア・開発者・プロダクトマネージャーで共有できるテスト仕様書の素早い作成

よくある質問

未到達状態とは何ですか?

初期状態から有効な遷移をたどっても到達できない状態です。遷移定義漏れや初期状態設定ミスの可能性があります。

異常系テストケースはどのように作られますか?

状態とイベントの組み合わせのうち、遷移が定義されていないペアから自動生成されます。

条件カバレッジが N/A になるのはなぜですか?

ガード条件付き遷移が1件もない場合、条件結果を測定できないため N/A 表示になります。

状態遷移テストとは何ですか?

状態遷移テストは、システムを有限状態マシン(状態・イベント・遷移)としてモデル化し、すべての有効な遷移の検証と不正・欠落遷移の検出を行うブラックボックステスト技法です。注文処理、認証フロー、承認ワークフローなど状態を持つ機能のテスト設計に広く使われています。

ガード条件はテストケース生成にどう影響しますか?

遷移にガード条件(例: 'amount > 0')が付いている場合、条件成立時(遷移実行)と不成立時(遷移ブロック)の2つのテストケースが自動生成され、条件カバレッジを確保できます。