API テストの作成 - ユースケース・シナリオ

関連:API テスト のみ

テストの作成には,いくつかの段階があります。このセクションでは,Flight API アプリケーションのテストを準備するときに実行すると考えられる段階を順を追って説明します。

このトピックの内容:

Flight API アプリケーションを分析する

アプリケーションを分析して,テストが必要なアプリケーション・プロセスを決定するときは,アプリケーションで実行される既存のビジネス・プロセスを考慮します。

Flight API アプリケーションでは,次のようなビジネス・プロセスをテストする必要があります。

  • ユーザ・データベースへの接続とログイン情報の確認

  • フライトのリストの取得

  • ユーザ入力に基づいた航空券申し込みの取得

  • 航空券の申し込みの作成

  • 航空券の申し込みの更新

  • 航空券の申し込みの削除

  • すべての航空券の申し込みの削除

  • アプリケーションからのユーザのログアウト

上記の最初と最後の項目はテスト対象の Flight API アプリケーションにまだ実装されていませんが,計画段階でこれらを考慮することは重要です。

これで,アプリケーションの主なプロセスが特定できたので,それぞれを分析して,アプリケーション・プロセスをどのように細分化して,テスト可能な小さなパーツにするかを決定する必要があります。

前述のビジネス・プロセスを論理的にブレークダウンすると,次のようになります。

ユーザ・データベースへの接続とログイン情報の確認
  • データベースへの接続要求の送信

  • データベース接続の確認または失敗の受信

  • ユーザ入力に基づいて顧客ログインの詳細データベースをチェック

  • ユーザ入力に対する認証結果(許可または拒否)を返す

  • アプリケーション・ユーザ・インタフェースへの結果を返す

フライトのリストの取得
  • フライト情報データベースへの接続

  • データベース接続の確認または失敗の受信

  • 利用可能なすべてのフライトをフライト情報データベースから検索

  • 検索結果を返す

ユーザ入力に基づいた航空券申し込みの取得
  • フライト情報データベースへの接続

  • データベース接続の確認または失敗の受信

  • ユーザ指定条件を使用してフライト情報データベースを検索

  • 検索結果を返す

航空券の申し込みの作成
  • ユーザ入力に基づいて特定のフライト用のフライト・データベースに接続

  • データベース接続の確認または失敗の受信

  • データベースで,選択したフライトの席の予約

  • 申し込みの確認を返す

航空券の申し込みの更新
  • ユーザ入力に基づいて,フライトデータベースに接続し,選択されたフライトを検索

  • データベース接続の確認または失敗の受信

  • 航空券の申し込みの詳細の入力

  • ユーザ入力に基づいて,データベース内のフライト情報を更新

  • 航空券の申し込みの更新の確認を返す

航空券の申し込みの削除
  • ユーザ入力に基づいて,フライトデータベースに接続し,選択されたフライトを検索

  • データベース接続の確認または失敗の受信

  • 航空券の申し込みの詳細の入力

  • 航空券の申し込みをデータベースから削除

  • 航空券の申し込みの削除の確認を返す

各ビジネス・プロセスのサブステップを比較することで,テスト内で設計が必要なステップがわかります。さらに,繰り返されるステップを見つけ,再利用可能なアクションにまとめて,テストのさまざまな箇所から呼び出すこともできます。

先頭に戻る

テスト・リソースを作成またはインポートする

Flight API アプリケーションのアプリケーション・プロセスの中には,[ツールボックス]表示枠で提供される標準コレクションの API アクティビティに含まれていないカスタム・アクティビティが必要なものもあります。このようなアクティビティは,インポートまたは作成して,テストに組み入れる必要があります。

今の段階でインポート可能な Web サービス・メソッドは次のとおりです。

  • CreateFlightOrder

  • GetFlights

  • GetFlightOrders

  • UpdateFlightOrder

  • DeleteFlightOrder

  • DeleteAllFlightOrders

Web サービス・メソッドのインポート方法の詳細については,WSDL ベースの Web サービスをインポートするを参照してください。

次の REST サービスのリソースとメソッドを作成することもできます。

  • Flights Get

  • Flight Get

  • FlightOrders Get

  • FlightOrders ReserveOrder

  • FlightOrder Get

  • FlightOrder Update

  • FlightOrder Delete

  • FlightOrder DeleteAll

REST サービス・メソッドの作成方法の詳細については,REST サービス・モデルの作成を参照してください。

先頭に戻る

テスト・ステップを作成する

これで,テストに必要なすべてのリソースの計画と準備が完了したので,ここからは,実際のアプリケーションが Flight API アプリケーションで実行するステップを表現するテスト・ステップを作成できます。

テスト・ステップで使用可能なアクティビティは,[ツールボックス]表示枠にあります。その中には,このテストのためにインポートまたは作成されたカスタム・メソッドも含まれます。

テスト・ステップを作成するには,[ツールボックス]表示枠からアクティビティを選択し,キャンバスにドラッグするか,ダブルクリックしてキャンバスに追加します。

次に,アプリケーションに合うように,アクティビティの入力プロパティ,出力プロパティ,またはチェックポイントのプロパティを設定します。

繰り返されるステップがある場合は,そのステップをまとめたアクションを作成し,そのアクションを呼び出すと,ステップを繰り返して呼び出さずにすみます。

テスト・ステップの作成作業の詳細については,API テストの作成を参照してください。

先頭に戻る

テスト・ステップを拡張する

Flight API アプリケーションのステップをキャンバスに適切に配置したら,そのテスト・ステップに拡張機能を追加できます。

  • テスト・ステップのチェックポイントのプロパティを設定し,各メソッドの期待される出力値を指定できます。

  • ステップの入力プロパティのさまざまな値を含むデータ・ソース(Excel ファイルなど)に,テスト・ステップをリンクできます。これにより,異なる入力値で,テスト・ステップがどのように実行されるかを確認できます。

  • ステップを別のステップにリンクできます。たとえば,GetFlights Web サービス・メソッドを CreateFlightOrder メソッドにリンクすると,2 つのメソッド間でフライト情報をやり取りできます。

  • テスト・ステップの実行前,実行中,実行後にイベント・ハンドラを追加して,ステップ機能を拡張することができます。

先頭に戻る

テストを実行する

テスト・ステップを追加し,入力プロパティ,出力プロパティ,チェックポイントのプロパティを指定したら,テストを実行して,その結果を確認します。実行結果でテスト・フローを表示し,各テスト・ステップの結果と応答を確認してください。

ステップのプロパティを入力してから,そのステップを個別にテストする場合は,キャンバスでステップ名を右クリックし,[ステップの実行]を選択します。UFT One は,そのステップのみを実行し,[ステップの実行結果]表示枠にステップの結果を表示します。

先頭に戻る