今回はKatalonStudioでテストの単位としてある3つ

  • Test Case
  • Test Suite
  • Test Suite Collection

についての説明です。

手動でのテストにおいても、会社やチームごとに用語が異なることはよくあります。テストケースとか、手順とか、テストセットテストステップその他色々・・・

ツール側に関しても、それぞれが何を指しているものなのかを理解した上で使ったり会話したりしないと認識がズレるので注意が必要ですね。

それぞれの説明

Test Case

TestCase(テストケース)はKatalonStudioにおけるテストの最小単位です。

テストケースは

  • テスト対象の起動・終了
  • 画面の操作
  • 値や画面表示などの確認

で構成されています。

テストケースはツリー表示の中でフォルダに分けて管理できるので、たとえばWebアプリケーションのテストであれば

  • Login(フォルダ)
    • ValidAccount(テストケース)
    • InvalidAccount(テストケース)
  • CreateData(フォルダ)
    • PatternA(テストケース)
    • PatternB(テストケース)
    • PatternC(テストケース)

なんて構成にできそうです。

テストケースは単体でのテスト実行も可能ですが、Resultに結果が残らないため、実際のテストで使用するためには、次のテストケースに追加が必要です。

Test Suite

TestSuite(テストスイート)は複数のテストケースから構成されます。

何らかの意味を持ったテストスイートを作成して実行することになります。考えられるのは

  • テストの重要度や頻度
    • 日次で行うスモークテスト
    • 週次で行う全体のGUIテスト
    • リリース判定に使用する詳細なレベルのテスト
    • など
  • 機能毎
    • 大機能A関連のテスト
    • 機能Bと共通のリソースを使用している機能のリグレッションテスト

などでしょうか。テストを行う組織やチームによって様々使いようがあると思います。

Test Suite Collection

最初にKatalonStudioに触ったときに、このテストスイートコレクションの存在がすんなり理解できませんでした。テストスイートではダメなの?と。

実際にドキュメントを読んでみて納得がいったのですが、使いみちはたとえば

  • 複数のテストスイートをシーケンシャルorパラレルに実行する
  • 同じテストスイートを複数の実行環境(ブラウザなど)で実行する

ときに便利なようです。

たとえば、Webサイト全体のハッピーパスのテストを、FirefoxとChromeとで並行して行いたいという場合は

  • HappyPathTestCollection(テストスイートコレクション)
    • HappyPathTest(テストスイート)←Chromeで行う設定にする
      • SignUp(テストケース)
      • Login(テストケース)
      • CreateData(テストケース)
      • DeleteData(テストケース)
    • HappyPathTest(テストスイート)←Firefoxで行う設定にする
      • SignUp(テストケース)
      • Login(テストケース)
      • CreateData(テストケース)
      • DeleteData(テストケース)

のように、同じテストスイートを2回読み込んでそれぞれ実行ブラウザの設定をFirefoxとChromeにすることで、1つのテストスイートコレクションを実行すれば全体の結果を得ることができます。