同步處理機制容許測試保持在同步化狀態,而不只倚賴計時,因為計時會因 Citrix 伺服器的負荷量而改變。
同步處理與驗證點不同。
驗證點會檢查應用程式的幾個值,例如視窗標題,並產生測試狀態:通過、失敗、 錯誤或不確定的。
同步處理用於測試的執行,並會在測試無法辨識伺服器輸出時,在測試執行歷程中,產生同步處理逾時。
同步處理發生於視窗事件,或是經由使用者所指定的畫面區域之識別。
- 測試記錄器會自動產生視窗事件同步處理。
執行測試時,虛擬使用者會傳送模擬的使用者動作至伺服器(例如鍵盤或滑鼠動作),而伺服器會透過視窗事件加以回應,例如建立、啟動、移動、調整大小或破壞。測試會等待預期的視窗事件發生之後,才會傳送下個使用者動作至伺服器。測試使用視窗樣式、位置及大小來辨識視窗。
- 影像同步處理可容許您在畫面區域的內容中新增額外的識別。測試同步化的進行,是依據從影像計算而來的唯一點陣圖雜湊碼,或是經由光學字元識別,從影像擷取而來的文字。您可以在記錄作業期間,手動新增影像同步處理至測試的重要部份。影像同步處理對於測試應用程式特別有用,在這類應用程式中,視窗物件很少變更,但卻經常更新視窗內容,例如 Internet Explorer。
在測試執行期間,測試會等視窗事件或影像識別與使用者動作進行同步化(不論伺服器的負荷量為何)。如果未發生預期的視窗事件,或是未辨識到預期的影像,測試會產生同步處理逾時,並記錄於測試執行歷程中。測試會試圖在下個同步處理點回復執行。
基本的逾時延遲時間是在產生 Citrix 測試喜好設定中指定,然而實際的延遲時間會依同步處理層次而有所不同。
視窗事件和影像共有三個同步處理層次,這些層次可以在測試編輯器中的每個元素上加以指定:
- 條件式:這是主視窗與對話框的預設行為。如果同步處理失敗,測試會嘗試繼續執行,並在 Citrix 效能報告與測試執行歷程中,將同步處理逾時記錄為警告。
- 強制的:如果同步處理於基準逾時延遲時間三次後失敗,測試會結束並呈現錯誤狀態。
- 選用的:如果在 2 秒後發生逾時情形,則不要求同步處理,但是會在測試執行歷程中記錄為警告。
測試記錄器會依據視窗事件的本質,自動為視窗事件設定建議的同步處理等級。例如,工具提示是設為選用的,而主視窗與對話框則設為條件式。
在影像識別方面,預設值為條件式。