マルチステップ操作

「構成」ダイアログ・ボックスの「マルチステップ操作」ビューは、リンクを特定の順序でクリックすることによってのみ到達できるサイトの部分をテストするためのビューです。

このビューは、特定の順序で要求を送信する場合のみアプリケーションの一部に到達できるときに使用されます。

例えば、ユーザーが次の順序でページを訪問するオンライン・ショップがあるとします。

ページ 1: ユーザーがショッピング・カートに 1 つ以上の品物を追加します

ページ 2: ユーザーが支払いと配送方法の詳細を入力します

ページ 3: ユーザーが、この注文が完了した確認を受け取ります

ページ 2 へは、ページ 1 を経由したときのみ到達できます。ページ 3 へは、ページ 1 に続いてページ 2 を経由したときのみ到達できます。 これがシーケンスです。ページ 2 とページ 3 をテストできるようにするには、AppScan® が各テストの前に HTTP 要求の正しいシーケンスを送信する必要があります。

上記の例では、ページ 1 > ページ 2 > ページ 3 という単一シーケンスを記録します。AppScan は、必要に応じてこの順序から必要なサブシーケンスを抽出します。(ページ 2 のテスト中には、ページ 1 の要求が最初に送信されます。ページ 3 のテスト中には、ページ 1 に続いてページ 2 が送信されます。)

注: マルチステップ操作の数は 5 個以下、1 つの操作のステップ数は 25 個以下、合計ステップ数は 70 個以下に制限することをお勧めします。
注: マルチステップ操作の構成をマニュアル探査と間違えないようにしてください。また、上記で説明したような場合にのみ使用してください。詳しくは、マニュアル探査を参照してください。


設定

詳細

レコード

クリックして新規シーケンスを記録します。ログイン詳細が構成されている場合は、下矢印をクリックして選択することができます。
ログインして記録
AppScan は、ブラウザーが開く前に (記録したログインを使用して) アプリケーションに自動でログインします。その後、ログイン要求を記録することなくマルチステップ操作を記録できるようになります。この方法には、このシーケンスが再生されるたびにログイン要求が再生されないという利点がありますが、AppScan がセッション無効状態の場合に限ります。
注: マルチステップ・シーケンスには存在し、ログイン・シーケンスには存在しないパラメーターと Cookie は、追跡をログイン値に変更した場合でも、常にダイナミックとして追跡されます。
ログインせずに記録
AppScan はログインせずにシーケンスの記録を開始します。ブラウザーが開いているときに、マルチステップ・シーケンスを直接記録します。ログインする必要がある場合は、ログインが記録の一部になるため、シーケンスが再生されるたびにログインが再生され、スキャン時間が大幅に長くなる可能性があります。ログインが必要な場合は、前のオプションを使用することがベスト・プラクティスです。
注: このオプションを使用してシーケンスの一部としてログイン要求を記録する場合、受け取ったパラメーターと Cookie は、ログイン要求であっても、また、追跡をログイン値に変更していても、常にダイナミックとして追跡されます。

詳しくは、シーケンスの記録を参照してください。

「エクスポート」ボタン | 「インポート」ボタン | 「マイナス」ボタン

シーケンスを別のスキャンで使用するため (SEQ ファイルとして) エクスポートします。別のスキャンからエクスポートされたシーケンス (SEQ ファイル) をインポートします。現在のスキャンから選択したシーケンスを削除します。

再生方法

マルチステップ操作を記録する場合、AppScan によりアクションと要求の両方が記録されます。アクションと要求のどちらをスキャンで使用するかを選択できます。
要求ベースの再生
生の HTTP 要求を記録から送信します。一般的に早いのはこちらの方法です。
アクション・ベースの再生
ユーザーのクリックおよびキー・ストロークを再生します。この方法を選択するのは、サイトに大量の JavaScript が含まれている場合や、要求ベースの再生に含まれている要求を検証した際に、その一部に赤色の X でマークが付けられた場合などです。この方法では、スキャン時間が長くなる可能性があります。
要求ベースの再生がデフォルトの方法です。
注: 組み込みのブラウザー以外のブラウザーを使用するようにスキャンが構成されている (「ツール」 > 「オプション」 > 「外部ブラウザーの使用」) 場合は、常に要求ベースの再生が使用されます。
注: アクション・ベースの再生のサポートが行われていなかった AppScan バージョンで記録されたシーケンスをロードする場合、アクション・ベースの再生が選択されていてもそのシーケンスに対しては要求ベースの再生が選択されます。

シーケンス名 (Sequence Name)

シーケンスのリストで選択されているシーケンスの名前です。

それぞれの名前の隣のチェック・ボックスは、このスキャンに対してそのシーケンスが有効であるかどうかを示します。

シーケンス

選択されたシーケンスのリンクを表示します。
  • 「検証」をクリックして、シーケンスが有効であることを確認します。AppScan はシーケンスを再生します。元の応答とは異なる応答を受け取る要求には赤色の X のマークが付けられ、これらがテストされないことが示されます。
    注: 要求が異なる応答を受け取る一般的な理由は、定義を必要とする動的シーケンス変数が存在しているためです。シーケンス変数を参照してください。
  • シーケンス内の任意のリンクを選択し、ブラウザーのボタンをクリックすることにより、そのリンクを表示します
  • シーケンス内の任意のリンクを選択し、「マイナス」ボタン をクリックすることにより、そのリンクを削除します。この後、「検証」をクリックして、シーケンスが引き続きセッション内を維持していることを確認します。
  • 「シーケンス」ペインの 1 つ以上のステップで右クリックし、「テストしません」を選択します。シーケンスの再生時、それらのステップは引き続き組み込まれますが、個別にテストされません。

再生最適化を許可する

(要求ベースの再生のみ) これが選択されている場合 (デフォルト)、AppScan は、不要な再生を回避することにより、スキャン時間を最適化しようとします。この設定は、再生の最適化が原因で、AppScan でアプリケーションの一部がなくなったことが検出されない限り、無効にしないでください。

シングル・スレッド・モードでのテスト

AppScan は、複数の要求が、その間にシーケンスの再生を必要としない場合、それらを同時に送信する可能性があります。この結果、アプリケーションの一部がなくなった場合は、このチェック・ボックスを選択してください。

シーケンス変数

シーケンスの記録中に受信した変数をリストし、AppScan が決定した追跡する必要がある変数を示します。これらはセッション ID または他の変数である可能性があります。このリスト内の変数の状況を変更して、AppScan がそれらの変数を処理する方法を改善することができます (詳しくは、シーケンス変数 を参照)。