在 Web 效能測試中使用驗證規則和擷取規則
驗證規則可透過驗證 Web 要求傳回的頁面上是否存在文字、標記或屬性,確認 Web 應用程式是否正確運作。 驗證規則也可以驗證要求完成所需的時間,以及表單欄位及其值是否存在。
擷取規則可透過擷取回應 Web 要求的資料,確認 Web 應用程式是否正確運作。 名稱/值組,擷取規則存放區產生測試內容。 擷取規則可以從欄位、文字、屬性、標頭、規則運算式和隱藏欄位中擷取。
本主題說明如何在 Web 效能測試中建立和使用驗證和擷取規則。
需求
- Visual Studio Ultimate
本主題內容:
預先定義的驗證規則
自訂驗證規則
驗證規則對負載測試的影響
預先定義的擷取規則
SharePoint 應用程式的預先定義的擷取規則
自訂擷取規則
驗證和擷取規則的工作
預先定義的驗證規則
Visual Studio Ultimate包含下列預先定義的驗證規則:
驗證規則類型 |
描述 |
---|---|
尋找文字 |
驗證回應中指定的文字是否存在。 如需詳細資訊以深入了解如何使用尋找文字驗證規則,請參閱逐步解說:將驗證和擷取規則加入至 Web 效能測試。 |
表單欄位 |
驗證具有特定名稱與值的表單欄位是否存在。 |
最大要求時間 |
確認要求是否在指定的時間內完成。 |
必要的屬性值 |
驗證指定的 HTML 標記 (包含具有指定值的屬性) 是否存在。 |
必要標記 |
驗證回應中指定的 HTML 標記是否存在。 |
回應時間目標 |
驗證此要求的回應時間是否小於或等於此要求所指定的回應時間目標。 回應時間目標為零將被忽略。 |
回應 URL |
驗證接受重新導向後的回應 URL 是否與記錄的回應 URL 相同。 已忽略 QueryString 參數。 |
選取的選項 |
驗證 HTML 'select' 標記中指定的選項是否已選取。 |
SharePoint -尋找 Rich Text 事件 |
類似於尋找文字驗證規則,但是比單一文字字串可讓您指定更多。
注意事項
這個驗證規則需要 Visual Studio Ultimate 2012.1 (含) 以後版本。
|
SharePoint -回應 URL |
類似於回應 URL 驗證規則,但可讓您為特定要求關閉並指定自訂結束字元。
注意事項
這個驗證規則需要 Visual Studio Ultimate 2012.1 (含) 以後版本。
|
標記內部文字 |
驗證所指定和預期的內部文字是否在指定的 HTML 標記中。 例如,您可以驗證特定內部文字是否存在清單方塊中,在該清單方塊中,選項文字是儲存在內部文字而不是屬性內:
在此情況下,如果您想要確認 "Airplane" 存在 myListBox 中,可以設定驗證規則的下列屬性:
|
自訂驗證規則
Visual Studio Ultimate會以 Microsoft.VisualStudio.TestTools.WebTesting.Rules 命名空間 (Namespace) 中類別 (Class) 的形式,提供預先定義的驗證規則。 不過,在建立自己的自訂驗證規則時,可以從 ValidationRule 類別中衍生。 如需詳細資訊,請參閱HOW TO:建立 Web 效能測試的自訂驗證規則。
驗證規則對負載測試的影響
執行驗證規則對負載測試的效能會有影響。 為了減輕對效能的影響,請使用要求的「驗證層級」來控制特定負載測試所使用的驗證規則。 您可以將每個規則的驗證層級設為「低」、「中」或「高」。 基本上,驗證層級設得越高,測試的執行速度越慢。
在要求中設定規則的「驗證層級」,決定了負載測試中該驗證規則的使用時機。 例如,若設為「高」,該規則只會在負載測試驗證層級設為高的時候執行。
負載測試驗證層級 |
所使用之要求設定的描述 |
---|---|
低 |
只叫用 (Invoke) 設為「低」的規則 |
中 |
叫用設為「低」和「中」的規則 |
高 |
叫用所有規則:「低」、「中」和「高」 |
在 Web 效能測試要求和負載測試設定中設定規則層級的能力,可讓您在執行測試時更有彈性。 將負載測試設定設為「低」會執行最少的規則,可以用於重度負載測試和壓力 (Stress) 回合中。 將負載測試設定設為「高」會執行大部分的規則,應該用於驗證比最大處理量更重要的情況中。
關於擷取規則
擷取規則可透過擷取回應 Web 要求的資料,確認 Web 應用程式是否正確運作。 名稱/值組,擷取規則存放區產生測試內容。 擷取規則可以從欄位、文字、屬性、標頭、規則運算式和隱藏欄位中擷取。
驗證規則與擷取規則類似,但它們不是擷取資料,而是驗證資料是否存在。
預先定義的擷取規則
Visual Studio Ultimate包含下列預先定義的擷取規則:
擷取規則類型 |
描述 |
---|---|
擷取屬性值 |
從指定的 HTML 標記擷取屬性的值。 如需詳細資訊以深入了解如何使用擷取屬性值規則,請參閱逐步解說:將驗證和擷取規則加入至 Web 效能測試。 |
擷取表單欄位 |
擷取回應中指定之表單欄位的值。 |
擷取隱藏欄位 |
從回應中擷取所有的隱藏欄位。 |
擷取 HTTP 標頭 |
擷取 HTTP 標頭的值。 |
擷取規則運算式 |
從符合規則運算式的回應中擷取文字。 |
擷取文字 |
從回應中擷取文字。 |
選取的選項 |
擷取清單或下拉式方塊中選取的文字。 |
標記內部文字 |
從指定的 HTML 標記擷取內部文字。 |
SharePoint 應用程式的預先定義的擷取規則
與Visual Studio Ultimate 2012 年 Visual Studio 2012.1 或之後加入 SharePoint 應用程式的下列預先定義的擷取規則:
擷取規則類型 |
描述 |
---|---|
SharePoint -擷取表單欄位。 |
擷取指定之 SharePoint 文字方塊或隱藏表單欄位的值回應的並將它放入測試內容中。 |
SharePoint -擷取 GUID |
從回應中擷取 SharePoint GUID 並將它放入測試內容中。 |
SharePoint -擷取 GUID 表單欄位。 |
擷取表單欄位名稱的值,包含 GUID,格式如下: BeginningOfName_mg_EmbeddedGUID_RemainderOfName。 例如: [ctl00_mg_69f4ec15_04da_449b_82ee_d6cdd46f8518_ctl00_ctl05_ctl05_ctl00_ctl00_ctl04_ctl00_ctl00_UserField] |
SharePoint -擷取選取的選項。 |
從回應中的 SharePoint ComboBox 的下拉式清單擷取值。 |
SharePoint -在索引鍵中擷取文字。 |
根據回應提供的索引鍵擷取一個指定的字串值,,並將它放入測試內容中。 |
SharePoint -擷取 WebParts ListView 值 |
從 Web 組件在回應中的清單檢視的指令碼部分擷取所有值使用清單標題做為搜尋準則。 |
SharePoint –尋找日曆日期 |
擷取可在回應的日期值在 SharePoint 曆法。 |
SharePoint –尋找行事曆項目。 |
擷取指定的事件 ID 值在回應中 SharePoint 的行事曆清單上。 |
SharePoint –尋找文件項目。 |
從 SharePoint 文件清單中擷取指定之文件的 ID 值在回應中。 |
SharePoint –尋找 Hrefs |
擷取在符合搜尋準則的回應的 href 參考。 |
SharePoint –搜尋查詢表列項目 |
擷取指定的清單項目的 ID 值在回應中。 |
自訂擷取規則
Visual Studio Ultimate會以 Microsoft.VisualStudio.TestTools.WebTesting.Rules 命令空間 (Namespace) 中類別 (Class) 的形式,提供預先定義的擷取規則。 不過,在建立自己的自訂擷取規則時,可以從 ExtractionRule 類別中衍生。 如需詳細資訊,請參閱HOW TO:建立 Web 效能測試的自訂擷取規則。
工作
工作 |
相關主題 |
---|---|
將驗證規則加入 Web 效能測試:在 Web 效能測試中加入並設定驗證規則,以協助您透過驗證 Web 要求傳回的頁面上是否存在文字、標記或屬性,來確認 Web 應用程式是否運作正確。 驗證規則也可以驗證要求完成所需的時間,以及表單欄位及其值是否存在。 驗證規則也能專門用於內部文字,以及選定的目標。 您也可以在測試層級的 Web 效能測試中,加入會對測試中的每個要求引發的驗證規則。 |
|
將擷取規則加入 Web 效能測試:加入並設定擷取規則,可透過擷取回應 Web 要求的資料,確認 Web 應用程式是否正確運作。 名稱/值組,擷取規則存放區產生測試內容。 擷取規則可以從欄位、文字、屬性、標頭、規則運算式和隱藏欄位中擷取。 |
|
建立您自訂的驗證及擷取規則:除了使用在 Microsoft Visual Studio Ultimate 中預先定義的驗證及擷取規則外,您也可以藉由從 ValidationRule 或 ExtractionRule 基底類別衍生規則,來建立自己的驗證規則。 建立自訂的驗證或擷取規則後,就可以將這些自訂規則加入至 Web 效能測試要求。 |
參考資料
Microsoft.VisualStudio.TestTools.WebTesting.Rules
請參閱
工作
概念
對 SharePoint 2010 應用程式執行 Web 效能和負載測試