產生和執行 Web 效能測試程式碼
Web 效能測試是透過瀏覽您的 Web 應用程式來錄製。 測試包含在負載測試中,測量您的 Web 應用程式在多個使用者壓力下的執行效能。 可將 Web 效能測試轉換成程式碼指令碼,您可以像編輯和自訂其他原始程式碼一樣編輯這個指令碼。 例如,您可以加入迴圈和分支建構。
產生 Web 效能測試程式碼
如果您尚未建立 Web 效能測試,請參閱記錄及執行 Web 效能測試 [已重新導向]。
產生程式碼測試。
為測試命名。
新的程式碼測試會在程式碼編輯器中開啟。
根據您加入方案的 Web 效能和負載測試專案範本,將會決定採用 Visual Basic 或 Visual C# 產生程式碼。
您在程式碼中可以看到 GetRequestEnumerator() 方法 (C#) 或 Run() 方法 (Visual Basic) 包含已錄製之測試的每個驗證規則與 Web 要求。
為了示範加入一些簡單程式碼,請向下捲動到方法的結尾,並在最後一個 Web 要求的程式碼之後加入下列程式碼:
if (DateTime.Today.DayOfWeek == DayOfWeek.Wednesday) { WebTestRequest customRequest = new WebTestRequest("http://weather.msn.com/"); yield return customRequest; } else { WebTestRequest customRequest = new WebTestRequest("https://msdn.microsoft.com/"); yield return customRequest; }
If DateTime.Today.DayOfWeek = DayOfWeek.Wednesday Then Dim customRequest As WebTestRequest = New WebTestRequest("http://weather.msn.com/") MyBase.Send(customRequest) Else Dim customRequest As WebTestRequest = New WebTestRequest("https://msdn.microsoft.com/") MyBase.Send(customRequest) End If
建置方案來驗證您的自訂程式碼編譯。
執行測試。
而且,因為執行當天剛好是星期三…
問與答
問:我可以同時執行多個測試嗎?
**答:**可以,請使用 [方案總管] 中的內容功能表。
問:我應該在產生程式碼測試之前或之後加入資料來源?
**答:**在您產生程式碼測試之前,加入資料來源比較容易,因為會自動產生程式碼。
當您執行具有資料來源的程式碼測試時,可能會看到下列錯誤訊息:
Could not run test <Test Name> on agent <Computer Name>: Object reference not set to an instance of an object.
發生此錯誤的原因是測試類別擁有已定義的 DataSourceAttribute,而沒有相對應的 DataBindingAttribute。 若要解決這個錯誤,請加入適當的 DataBindingAttribute、刪除它,或在程式碼註解它。
問:我應該在產生程式碼測試之前或之後加入驗證和擷取規則?
**答:**在產生程式碼測試之前加入驗證規則和擷取規則比較容易;不過建議您使用自動程式碼 UI 測試進行驗證。