テストデータを使用する

テストデータは、有意義で安定性とレジリエンスのあるテストを構築するために不可欠です。このトピックでは、テストデータとは何かを分析し、共通の課題を取り上げ、Tosca Cloudで利用できる解決策を説明します。「はじめに」のセクションは、選択した解決策を実行に移す際に役立ちます。

テストデータとは

テストケーステストステップを記入するたびに、このテストステップの値を定義する必要があります。その値は、テスト対象アプリケーションとの実際の入力またはやり取りを決定します。はさまざまなことができます。例えば、ボタンの上でクリックをトリガーしたり、タイムスタンプなどの仕様に基づいて動的なコンテンツを生成したりします。

ただし大半の場合、値には、入力・確認・処理の対象となる何らかの形式のデータが含まれています。これが当社がテストデータと呼ぶデータの種類です。

共通の課題

テストデータにはいくつかの課題があります。

  • テストに適したテストデータを特定する必要があります。不正確または関連性のないテストデータは、誤検知、欠陥の見逃し、カバレッジのギャップを引き起こす可能性があります。

  • テストデータは、一貫性がありアクセスしやすい場所で保持してください。一元管理のテストデータは、テストの拡大縮小が容易に行えます。また、チームが優れたテストの作成に必要なすべての要素に簡単にアクセスできます。

  • テストを支えるのに十分な量のテストデータを生成する必要があります。十分かつ多様なテストデータは、強力なテストカバレッジを実現するための鍵であり、それにより、アプリケーションはすべての成功基準を満たすことができます。

Tosca Cloudのソリューション

自動テストケースの作成に関しては、お客様のアプローチが速度、保守容易性、全体の効率性に影響を与えます。

テストデータソリューションを一切使用せずにテストケースを作成することも可能ですが、それは最も効率の低い方法です。Tosca Cloudは、より高度なオプションを提供します。一つは効率を大幅に向上させるオプションで、もう一つは「ベストプラクティス」レベルをすぐに達成できるオプションです。

最も低効率:静的な値を持つテストケース

ここでは、固定のハードコーディングされたテストデータを使用するテストケースを設計します。例えば、顧客名をフィールドに入力する場合、テストケースの値には実際の顧客名が含まれます。

すべての独自シナリオ向けにテストデータを作成するには、多大な時間がかかります。何かが変更されると、数十(または数百!)のテストケースを更新する必要が生じるかもしれません。

誤解のないように言うなら、静的な値に反対はしていません。静的な値が意味を持つこともあります。例えば、スモークテストに使用して、決して変更されることのない極めて特殊なケースをチェックすることが可能です。しかし一般的には、静的な値を避けることを推奨します。これは時間のかかるプロセスであり、エラーが発生しやすく、維持管理も大変です。

効率的:Tosca Cloudでテストデータを使用するテストケース。

ここでは、Tosca Cloudに保存したテストデータを参照するテストケースを設計します。例えば、顧客名をフィールドに入力する場合、テストケースの値は「データセットABCの列Xからランダムな値を入力」することを示唆します。

お客様がテストデータの管理とプロビジョニングを自動化したことで、チームは、テストデータを考案したりテストケース内のハードコーディングされたテストデータを修正したりする代わりに、優れたテストの作成に集中できます。何か変更があった場合でも、データを一箇所で更新するだけで済みます。

しかし、依然として労力を要することがあります。

  • ビジネス目標とのすり合わせです。テスターはビジネス要件を把握し、それをテストケースに変換する必要があります。一方、QAマネージャーやビジネスの利害関係者が、テストスイートや、個々のテストが主要な目標にどのように結びついているかを理解するのに苦労することはよくあります。

  • カバレッジ。テスターはすべてのシナリオを手作業で作成する必要がありますが、これには時間がかかり、重要なシナリオを見逃すリスクが高まります。

ベストプラクティス:ビジネスフローから生成されたテストケース

ここでは、異なるアプローチを採用します。テストケースを1件ずつ作成するのではなく、当社でビジネスフローと呼んでいるものを定義します。

ビジネスフローは、ユーザーがアプリケーション内で実行できるすべての活動を視覚的に表現したものです。これにより、ユーザーができることと、アプリケーション内でのユーザーの動きがはっきり可視化されます。ビジネスフローでは、ユーザーがある活動から別の活動へ移動する際の具体的なルートをお客様が定義します。

ビジネスフローが準備された後は、簡単なワンクリック操作でテストケースを作成できるようになります。

実際には、このアプローチではほとんどの労力は計画段階に集中します。ビジネスフローは視覚的な性質があるため、利害関係者とのコラボレーションや、テストをビジネス目標に結びつけることが容易になります。それと同時に、ビジネスフローは、テストシナリオ向けの明確で実行可能なフレームワークとなります。

はじめに

Tosca Cloudを使用して効率を向上させる準備はできていますか?ユースケースを選択してください。