使用不同的 Web 瀏覽器搭配自動程式碼 UI 測試
自動程式碼 UI 測試可以使用 Internet Explorer 錄製測試,以自動測試 Web 應用程式。之後,您可以自訂測試再使用 Internet Explorer 或其他瀏覽器類型的 Web 應用程式進行播放。
需求
Visual Studio Ultimate 或Visual Studio Premium
作業系統:
Microsoft Windows 7
Microsoft Windows 8
Microsoft Windows Server 2008 R2 SP1
Web 瀏覽器版本:
Windows Internet Explorer 9
Windows Internet Explorer 10
如需支援的 Mozilla Firefox 和 Google Chrome 版本,請移至這裡 (英文)。
安裝進行自動程式碼 UI 跨瀏覽器測試的 Selenium 元件 (英文)。
哪些功能是所有 Web 瀏覽器都支援的?
加入用於控制功能的自訂程式碼 (英文),例如屬性、搜尋和播放等候者。
快顯和對話方塊
搜尋彈性 (使用智慧比對) 和效能改善 (英文)
為什麼應該跨多種 Web 瀏覽器類型使用自動程式碼 UI 測試?
您的使用者可能執行不同的瀏覽器,因此使用各種 Web 瀏覽器類型測試 Web 應用程式可以進一步模擬其 UI 使用經驗。例如,您的應用程式可能會在 Internet Explorer 中包含與其他 Web 瀏覽器不相容的控制項或程式碼。若能跨其他瀏覽器執行自動程式碼 UI 測試,可以找出並修正任何可能影響客戶的問題。
如何使用支援的 Web 瀏覽器,在 Web 應用程式上錄製和播放自動程式碼 UI 測試?
**記錄:**您必須使用 [自動程式碼 UI 測試產生器] 記錄使用 Internet Explorer 的 Web 應用程式測試。您可以選擇性地使用一組預先定義的屬性針對待測控制項加入驗證和自訂程式碼,就像平常使用自動程式碼 UI 測試所做的一樣。如需詳細資訊,請參閱使用 UI 自動化驗證程式碼。
注意事項 |
---|
您不能使用 Google Chrome 或 Mozilla Firefox 瀏覽器記錄自動程式碼 UI 測試。 |
**使用 Internet Explorer 播放:**若未明確指定瀏覽器,預設會使用 Internet Explorer 執行測試。您可以在測試程式碼中設定 BrowserWindow.CurrentBrowser 屬性,以明確指定要使用的瀏覽器。若使用 Internet Explorer,應將這個屬性設定為 [IE] 或 [Internet Explorer]。
**使用非 Internet Explorer Web 瀏覽器播放:**若要在非 Internet Explorer 的 Web 瀏覽器中播放,請將測試程式碼中的 BrowserWindow.CurrentBrowser 屬性變更為 [Firefox] 或 [Chrome]。
若要在非 IE 網頁瀏覽器上播放測試,您必須安裝Selenium components for Coded UI Cross Browser Testing。
安裝 Selenium 元件
在 [工具] 功能表中選擇 [擴充功能和更新]。
在 [擴充功能和更新 ]對話方塊中搜尋 Selenium components for Cross Browser Testing。
反白顯示擴充功能並選擇 [下載]。
提示 您也可以從這裡 (英文) 下載「進行自動程式碼 UI 跨瀏覽器測試的 Selenium 元件」。
如需建立和使用自動程式碼 UI 測試的詳細資訊,請參閱Creating Coded UI Tests。
啟用偵錯
若要啟用偵錯 Web 應用程式的功能,您必須完成下列組態選項:
啟用 Just My Code:
在 [工具] 功能表中選擇 [選項],然後選擇 [偵錯]。
選取 [啟用 Just My Code]。
停用 CLR 例外狀況:
在 [偵錯] 功能表中選擇 [例外狀況]。
取消核取 [通用語言執行平台例外狀況] 的 [使用者未處理]。
- 我在自動程式碼 UI 測試中看不到變更 BrowserWindow.CurrentBrowser 的選項。
您使用的 Microsoft Visual Studio 2012 版本可能不支援使用多種 Web 瀏覽器進行自動程式碼 UI 測試。若要使用這類自動程式碼 UI 測試,您必須搭配使用 Visual Studio Ultimate 與 Visual Studio 2012 Update 4 或更新版本的 Visual Studio Ultimate。
我還應該知道什麼?
備註不支援 Apple Safari Web 瀏覽器。
自動程式碼 UI 測試必須包含啟動 Web 瀏覽器的動作。
如果您已開啟一個 Web 瀏覽器,並且想要在其中執行步驟,除非使用 Internet Explorer,否則會播放失敗。因此,最佳作法是在自動程式碼 UI 測試中包含啟動 Web 瀏覽器的動作。
不支援自動化瀏覽器架構專用的 UI 動作,例如最大化、最小化和還原。
祕訣
您可以設定輸出,在自動程式碼 UI 記錄中包含螢幕擷取畫面。若要這麼做,您需要完成 QTAgent32.exe.config 檔案的某些組態設定。根據預設,這個檔案會安裝在下列位置:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE
設定下列的值:
system.diagnostics 區段中的EqtTraceLevel。
<add name="EqtTraceLevel" value="4" />
將值設為 3 或以上,即可擷取每一個動作的螢幕擷取畫面。若將值設為 1 或 2 時,則只擷取錯誤動作的螢幕擷取畫面。
如需詳細資訊,請參閱使用自動程式碼 UI 測試記錄分析自動程式碼 UI 測試。
外部資源
視訊
在 IE 上錄製並在所有位置播放 (英文)
使用純手動編碼而不使用 UI 對應撰寫跨瀏覽器測試 (英文)
循序在多個瀏覽器執行跨瀏覽器測試 (英文)
跨瀏覽器測試失敗疑難排解 (英文)
指引
使用 Visual Studio 2012 測試持續傳遞 - 第 2 章:單元測試:測試內部 (英文)
使用 Visual Studio 2012 測試持續傳遞 - 第 5 章:自動化系統測試 (英文)
常見問題集
自動程式碼 UI 測試常見問題集 - 1 (英文)
自動程式碼 UI 測試常見問題集 - 2 (英文)
論壇
Visual Studio UI 自動化測試 (包括自動程式碼 UI) (英文)