多步驟作業

「配置」對話框的「多步驟作業」視圖,是用來測試依特定順序按一下鏈結才能呼叫到的網站部分。

當只能依特定順序傳送要求來抵達應用程式的某些部分時,便使用這個視圖。

例如,設想有一家線上商店,使用者是依下列順序來造訪頁面:

第 1 頁:使用者將一或多個項目新增到購物車

第 2 頁:使用者填寫付款和出貨詳細資料

第 3 頁:使用者收到訂單已完成的確認

只有透過第 1 頁,才能抵達第 2 頁。只有透過第 1 頁,再接著第 2 頁,才能抵達第 3 頁。這是一個序列。如果要能夠測試第 2 頁和第 3 頁,AppScan® 必須在每項測試之前,傳送正確的 HTTP 要求序列。

如果在上述範例中您要記錄單一序列:第 1 頁 > 第 2 頁 > 第 3 頁。AppScan 會視需要從此序列擷取必要的子序列。(當測試第 2 頁時,它會先傳送第 1 頁的要求;當測試第 3 頁時,則是傳送第 1 頁,後面接著第 2 頁。)

註: 建議將多步驟作業數目限制為 5 項,任何一項作業中的步驟不超過 25 個,所有步驟加起來不超過 70 個。
註: 配置多步驟作業不應誤認為是手動探索,並且只有在上述情況時才應使用。如需詳細資料,請參閱手動探索


設定

詳細資料

記錄

按一下會記錄新的序列。如果已配置登入詳細資料,您可以按一下向下箭頭來選取︰
先登入,再記錄
AppScan 會在瀏覽器開啟之前,自動登入應用程式(使用您記錄的登入)。然後您可以記錄您的多步驟作業,而不記錄登入要求。這個方法的優點是不會在每次播放此序列時重播登入要求,但是僅限 AppScan 是在階段作業外時。
註: 系統一律會以「動態」形式追蹤存在於「多步驟」序列中但是不存在於「登入」序列的參數和 Cookie,即使您將其追蹤變更為「登入值」也是如此。
記錄而不登入
AppScan 並不登入,便直接開始記錄序列。當瀏覽器開啟時,您可以直接記錄您的多步驟序列。如果您需要登入,登入會是記錄的一部分,因此會在每次播放序列時重播,這樣會大幅增加掃描時間。需要登入時,最佳作法是使用上一個選項。
註: 如果您使用這個選項,然後將登入要求記錄作為序列的一部分,即使您將收到的參數和 Cookie 追蹤變更為「登入值」,系統一律會以「動態」形式追蹤這些值。

如需詳細資料,請參閱記錄序列

匯出按鈕 | 匯入按鈕 | 減號按鈕

匯出序列(作為 SEQ 檔案)以用於不同掃描;從不同的掃描匯出一個匯入的序列(SEQ 檔案);從現行掃描刪除選取的序列。

播放方法

當您記錄多步驟作業時,AppScan 會記錄動作和要求。您可以選取其中的哪些項目將用於掃描:
要求型播放
從紀錄傳送原始 HTTP 要求。這種方法通常較快。
動作型播放
重播使用者的按一下和按鍵內容。選取此方法的原因可能是由於網站包含大量的 JavaScript,或是當您嘗試驗證要求型播放中的部分要求時,它們標示了紅色的 X。這個方法會增加掃描時間。
要求型播放為預設方法。
註: 如果掃描被配置為不使用內嵌瀏覽器以外的瀏覽器(「工具」>「選項」>「使用外部瀏覽器」),則一律會使用要求型播放。
註: 如果您載入在不支援動作型播放的 AppScan 版本中所記錄的序列,則即使已選取動作型播放,仍會針對該序列使用要求型播放。

序列名稱

「序列清單」中所選取的序列名稱。

每一個名稱旁邊的勾選框指出是否已針對此掃描啟用序列。

順序

顯示所選序列中的鏈結。
  • 按一下驗證以檢查序列是否有效。AppScan 會重播序列,如果有任何要求收到與原始不同的回應,則會標示紅色的 X,指出將不會測試這些要求。
    註: 要求收到不同回應的常見原因是存在需要被定義的動態序列變數,請參閱序列變數
  • 選取序列中的任何鏈結,然後按一下瀏覽器按鈕,以檢視這個鏈結
  • 選取序列中的任何鏈結,然後按一下減號按鈕以刪除這個鏈結。完成此動作之後,按一下驗證以檢查序列是否仍保持在階段作業內。
  • 在「序列」窗格中用滑鼠右鍵按一下一或多個步驟,然後選取不要測試。在顯示序列時,仍會包含這些步驟,但不會個別測試它們。

允許播放最佳化

(僅要求型播放)選取之後(預設值),AppScan 會試圖避免不必要的播放以最佳化掃描時間。除非您發現 AppScan 因為播放最佳化而遺漏應用程式的若干部分,否則,不應停用這個設定。

以單一執行緒模式測試

AppScan 如果不需要在中間重播某個序列,有可能同步傳送兩個以上的要求。如果這會造成遺漏應用程式的若干部分,請選取這個勾選框。

序列變數

列出記錄序列時所收到的變數,指出 AppScan 決定應該追蹤的變數。這些有可能是階段作業 ID 或其他變數。您可以變更這份清單中的變數狀態,來改善 AppScan 處理這些變數的方式(如需詳細資料,請參閱 序列變數)。