分享方式:


多步驟 Web 測試

您可以透過多步驟 Web 測試,監視一系列記錄的 URL 以及與網站的互動。 本文將逐步引導您完成使用 Visual Studio Enterprise 建立多步驟 Web 測試的程式。

重要

多步驟 Web 測試已被取代。 我們建議使用 TrackAvailability() 來提交自訂可用性測試,而不是多步驟的 Web 測試。 透過 TrackAvailability() 和自訂可用性測試,您可以在所需的任何電腦上執行測試,並使用 C# 輕鬆撰寫新的測試。

多步驟的 Web 測試分類為傳統測試,可以在 [可用性] 窗格中的 [新增傳統測試] 下找到。

注意

Azure Government 雲端中不支援多步驟 Web 測試。

多步驟 Web 測試替代項目

多步驟 Web 測試取決於 Visual Studio Web 測試檔案。 已宣佈 Visual Studio 2019 會是具有 Web 測試功能的最後一個版本。 雖然不會新增任何新功能,但目前仍支援 Visual Studio 2019 中的 Webtest 功能,並且會在產品的支援生命週期中繼續受到支援。

我們建議使用 TrackAvailability 來提交自訂可用性測試,而不是多步驟 Web 測試。 此選項是多重要求或驗證測試情節的長期支援解決方案。 透過 TrackAvailability() 和自訂可用性測試,您可以在所需的任何電腦上執行測試,並使用 C# 輕鬆撰寫新的測試。

必要條件

您需要:

  • Visual Studio 2017 Enterprise 或更新版本。
  • Visual Studio Web 效能與負載測試工具。

若要找出測式工具必要條件,請選取 [Visual Studio 安裝程式] > [個別元件] > [偵錯和測試] > [Web 效能和負載測試工具]

顯示 Visual Studio 安裝程式 UI 的螢幕快照,其中包含選取個別元件的螢幕快照,其中包含 Web 效能和負載測試工具專案旁的複選框。

注意

多步驟 Web 測試有相關聯的額外成本。 若要深入了解,請參閱官方價格指南

重要

多步驟 Web 測試 依賴公用因特網的 DNS 基礎結構來解析已測試端點的功能變數名稱。 如果您使用私人 DNS,必須確定公用網域名稱伺服器可以解析測試的每個網域名稱。 如果無法移除,您可以改用自訂 TrackAvailability 測試。

記錄多步驟 Web 測試

警告

我們不再建議使用多步驟錄製器。 錄製器是針對具有基本互動的靜態 HTML 頁面所開發。 不提供新式網頁的功能體驗。

如需如何建立 Visual Studio Web 測試的指引,請參閱官方 Visual Studio 2019 文件

上傳 Web 測試

  1. 在 [可用性] 窗格的 Application Insights 入口網站中,選取 [新增傳統測試]。 然後選取 [多步驟] 作為 SKU
  2. 上傳您的多步驟 Web 測試。
  3. 設定測試位置、頻率及警示參數。
  4. 選取 建立

頻率和位置

設定 描述
測試頻率 設定從每個測試位置執行測試的頻率。 預設頻率為 5 分鐘且有五個測試位置,則您的網站平均每一分鐘會執行測試。
測試位置 是我們的伺服器將 Web 要求傳送至 URL 的位置。 建議的測試位置數目下限為五個,以確保您可以區分網站問題與網路問題。 您最多可以選取 16 個位置。

成功準則

設定 描述
測試逾時 降低此值可收到有關回應變慢的警示。 如果未在這段時間內收到您網站的回應,則測試會視為失敗。 如果已選取 [剖析相依要求] ,則必須在這段時間內收到所有映像、樣式檔、指令碼和其他相依資源。
HTTP 回應 視為成功的傳回狀態碼。 代碼 200 表示已傳回標準網頁。
內容比對 字串,例如「歡迎!」我們會測試每個回應中的區分大小寫完全相符。 必須是單純字串,不含萬用字元。 別忘了,如果頁面內容變更,則可能需要更新。 內容相符僅支援英文字元。

警示

設定 描述
近即時 (預覽) 我們建議使用近乎即時的警示。 您的可用性測試建立後,此類型的警示會設定完成。
警示位置閾值 建議至少為位置數的 3/5。 警示位置閾值與測試位置數目之間的最佳關聯性,就是警示位置閾值 = 測試位置數目 - 2 (最少五個測試位置)。

組態

請遵循這些設定步驟。

在您的測試中插入時間和隨機數字

假設您要測試的工具會從外部來源取得與時間相關的資料 (例如股票價格)。 當您記錄 Web 測試時,您必須使用特定的時間,但您將其設為測試的參數:StartTimeEndTime

顯示股票應用程式的螢幕快照。

當您執行測試時,一律想要 EndTime 成為目前的時間。 StartTime 應該早 15 分鐘。

Web 測試日期時間外掛程式提供處理參數時間的方式。

  1. 針對您想要的每個變數參數值,各加入一個 Web 測試外掛程式。 在 Web 測試工具列上,選取 [新增 Web 測試外掛程式]

    顯示 [新增 Web 測試外掛程式] 的螢幕快照。

    在此範例中,我們會使用兩個日期時間外掛程式執行個體。 一個執行個體設定為 "15 minutes ago",另一個則設定為 "now"。

  2. 開啟每個外掛程式的屬性。 為屬性命名,然後將它設為使用目前時間。 對其中一個,設定 [加入分鐘 = -15]

    顯示內容參數的螢幕快照。

  3. 在 Web 測試參數中,使用 {{plug-in name}} 來參考外掛程式名稱。

    顯示 StartTime 的螢幕快照。

現在將您的測試上傳至入口網站。 在每次執行測試時,會使用動態值。

請考量登入

如果使用者登入您的應用程式,您有許多模擬登入的選項,以便在登入後方測試頁面。 您使用的方法取決於應用程式所提供的安全性類型。

在所有案例中,在您的應用程式中建立帳戶僅是為了測試。 可能的話,限制此測試帳戶的權限,讓 Web 測試不可能影響實際使用者。

簡單的使用者名稱和密碼

以一般方式記錄 Web 測試。 先刪除 Cookie。

SAML 驗證

屬性名稱 描述
對象 URI SAML 權杖的對象 URI。 此 URI 適用於存取控制服務,包括存取控制命名空間和主機名稱。
憑證密碼 將授與內嵌私密金鑰存取權之用戶端憑證的密碼。
用戶端憑證 具有 Base64 編碼格式之私密金鑰的用戶端憑證值。
名稱識別碼 Token 的名稱識別碼。
不晚於 權杖將持續有效的時間範圍。 預設值是 5 分鐘。
生效時間 在過去建立的權杖將持續有效的時間範圍 (以處理時間扭曲)。 預設值為 (負) 5分鐘。
目標內容參數名稱 將接收所產生之判斷提示的內容參數。

用戶端密碼

如果應用程式的登入路由牽涉到用戶端密碼,請使用此路由。 Azure Active Directory (Azure AD) 是可提供用戶端密碼登入的服務範例。 在 Azure AD 中,用戶端密碼是應用程式金鑰。

以下是使用應用程式金鑰之 Azure Web 應用程式的 Web 測試範例。

顯示範例的螢幕快照。

  1. 使用用戶端密碼 (應用程式金鑰) 從 Azure AD 取得權杖。
  2. 從回應中擷取持有人權杖。
  3. 使用授權標頭中的持有人權杖呼叫 API。
  4. 請確定 Web 測試是實際的用戶端。 也就是說,在 Azure AD 中有自己的應用程式。 使用其用戶端識別碼和應用程式金鑰。 受測的服務在 Azure AD 中也有自己的應用程式。 此應用程式的應用程式識別碼 URI 會反映在資源欄位中的 Web 測試。

開放驗證

使用您的 Microsoft 或 Google 帳戶登入動作即是開放驗證的範例。 許多使用 OAuth 的應用程式都提供替代用戶端密碼,第一個技巧就是調查該可能性。

如果您的測試必須使用 OAuth 登入,則常用的方式是:

  1. 使用 Fiddler 等工具來檢查網頁瀏覽器、驗證網站及您的應用程式之間的流量。
  2. 使用不同的電腦或瀏覽器,或以較長時間間隔 (讓權杖過期) 執行兩次以上的登入。
  3. 藉由比較不同的工作階段,識別從驗證網站傳回的權杖,登入之後此權杖會傳遞至您的應用程式伺服器。
  4. 使用 Visual Studio 記錄 Web 測試。
  5. 將權杖參數化。 當驗證器傳回權杖時設定參數,然後在查詢網站時使用參數。 (Visual Studio 會嘗試將測試參數化,但不會正確地將權杖參數化。)

疑難排解

如需疑難排解說明,請參閱專用疑難排解文章。

下一步