關於 Web 測試中的 JavaScript 和 ActiveX 控制項
更新:2007 年 11 月
在 Visual Studio Team System Test 版中,您會將 Web 測試錄製在「Web 測試錄製器」(Web Test Recorder) 中。您會以「Web 測試引擎」(Web Test Engine) 執行 Web 測試。Web 測試引擎是在 HTTP 層作業。Web 測試引擎使用標準的 HTTP 要求/回應訊息,直接與目標 Web 伺服器通訊。它不會執行 JavaScript。
注意事項: |
---|
Web 測試錄製器會同時記錄 AJAX 要求和 Javascript 所送出的要求。Web 測試引擎不會執行 Javascript。 |
本文件將會討論如何在您的「Web 測試」中處理 JavaScript、ActiveX 控制項、快顯視窗 (Pop-Up Window),以及 AJAX。
JavaScript
通常您不需要針對 Web 應用程式中的 JavaScript,將任何特殊處理加入至 Web 測試。當您錄製 Web 測試時,JavaScript 會根據 Internet Explorer 的設定執行。JavaScript 所產生做為表單參數或查詢字串參數使用的任何值,都會由 Web 測試錄製器擷取。當您以 Web 測試引擎執行 Web 測試時,JavaScript 不會執行,但會使用錄製期間所設定的參數值。
JavaScript 和 Web 測試檢視器
您會使用 Web 測試引擎執行 Web 測試,並在「Web 測試檢視器」(Web Test Viewer) 中檢視結果。Web 測試檢視器含有一個索引標籤,其中顯示 Web 測試中每一個要求的 HTTP 回應。HTTP 回應是您 Web 測試的資料,此資料會告訴您 Web 應用程式是否運作正確。
注意事項: |
---|
您加入至測試的驗證與擷取規則是針對 HTTP 回應而執行的。 |
Web 測試檢視器中也包含具有內嵌瀏覽器控制項的索引標籤。瀏覽器控制項會嘗試針對您 Web 測試中的每一個要求顯示 HTTP 回應。因為 Web 測試引擎不執行 JavaScript,因此內嵌的瀏覽器控制項設定為不執行 JavaScript。
有些網站在它們的 HTML 中包含 noscript 標記。這個標記可以讓網站指定當瀏覽器設定為不執行 JavaScript 時,瀏覽器所會顯示的錯誤訊息。如果網站包含 noscript 標記,當您執行測試時,可能會在 Web 測試檢視器中看到錯誤訊息,例如 JavaScript required。該錯誤訊息表示,本網頁並未正確顯示於檢視器中,但多數時候回應依然是正確的。您應該檢查 HTTP 回應,判斷 Web 測試是否正確運作。
注意事項: |
---|
您也可以加入驗證規則,判斷 Web 測試是否正確運作。 |
JavaScript 和 Web 測試程式碼
有些 Web 應用程式依賴 JavaScript 的方式會影響 HTTP 要求。您可以使用 Web 測試程式碼,模擬 JavaScript 一般執行的邏輯。例如,應用程式也許會使用 JavaScript 動態修改表單參數。在 Web 測試程式碼中,您可以撰寫程式碼,以手動方式對表單參數進行相同的修改。如需詳細資訊,請參閱 HOW TO:建立已編碼的 Web 測試。
ActiveX 控制項
在您 Web 應用程式中的 ActiveX 控制項會分為三個類別,視它們在 HTTP 層級的運作方式而定。
您的 ActiveX 控制項不會在 HTTP 層級執行任何作業,只在網頁上顯示一些視覺效果。若是如此,則不需要在 Web 測試中加入任何特殊處理。
您的 ActiveX 控制項不在 HTTP 層級執行任何作業,但是您想要加以測試。例如,如果您有很大型的 ActiveX 控制項,您可能會想在負載測試中測試它,檢查它是否會影響 Web 應用程式的速度。若是如此,請將 ActiveX 控制項加入至網頁做為相依要求,而它在測試回合期間就會被下載。
您的 ActiveX 控制項在 HTTP 層級執行某些作業,例如從 Web 服務擷取資料。在這種情況下,您必須將測試轉換成 Web 測試程式碼,並手動加入 HTTP 要求。