HOW TO:設定用於測試的 Silverlight 應用程式
您可以在 Visual Studio 2010 Ultimate 或 Visual Studio 2010 Premium 中使用自動程式碼 UI 測試,建立 Silverlight 4 應用程式的自動化測試。 您也可以使用 Microsoft 測試管理員,針對 Silverlight 4 應用程式的手動測試建立動作記錄。
重要事項 |
---|
只支援裝載於 Internet Explorer 視窗的 Silverlight 4 應用程式。 不支援裝載於不同瀏覽器或未裝載於瀏覽器的 Silverlight 4 應用程式。 |
若要將 Silverlight 4 應用程式設定為能夠建立自動程式碼 UI 測試或動作記錄,您必須執行下列主要工作:
將 Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll 當做參考加入至方案中的每個 Silverlight 4 專案,以便於識別 Silverlight 控制項。
確認每個 Silverlight 控制項都有唯一的識別屬性。
注意事項 若要為不同控制項設定此屬性,請參閱為用於測試的 Silverlight 控制項設定唯一自動化屬性。
建置和部署應用程式。
警告
SilverlightUIAutomationHelper.dll 不可做為您應用程式的一部分來轉散發。 當您將這個 DLL 加入至 Silverlight 專案時,必須加入它以條件式編譯應用程式 (無論是否具有這個 DLL),如下列程序所示。 您可以建立具有此 DLL 的組建,只做為測試之用。 這樣一來,便不會轉散發 DLL。
支援的控制項
動作記錄和自動程式碼 UI 測試支援下列控制項:
支援隨附於 Microsoft Silverlight 4 Tools for Visual Studio 2010 的標準控制項。
支援衍生自 Microsoft Silverlight 4 Tools 標準控制項的自訂控制項。
繼承自 System.Windows.Controls.Control 的自訂控制項。 視您自訂這些控制項的方式,對某些動作的支援可能有限。 此外,可能無法取得某些屬性值以供驗證。
不支援的控制項
動作記錄和自動程式碼 UI 測試不支援下列控制項:
不是衍生自 Microsoft Silverlight 4 Tools for Visual Studio 2010 隨附之控制項的自訂控制項。
可能不支援協力廠商控制項,視控制項的建立方式而定。
警告
您可以建立自訂外掛程式,以支援自訂控制項測試。 如需示範如何建立自訂外掛程式的範例,請參閱擴充自動程式碼 UI 測試和動作記錄以支援 Microsoft Excel。
使用下列程序加入或移除 SilverlightUIAutomationHelper.dll:
將 SilverlightUIAutomationHelper.dll 加入至 Silverlight 4 專案
從 Silverlight 4 專案移除 SilverlightUIAutomationHelper.dll
若要測試每個 Silverlight 控制項的唯一識別屬性,請參閱下列主題:為用於測試的 Silverlight 控制項設定唯一自動化屬性。
若要將 SilverlightUIAutomationHelper.dll 加入至 Silverlight 4 專案
若要開啟包含任何一個 Silverlight 專案的方案,請按一下 [檔案],指向 [開啟]。 按一下 [專案/方案]。
[開啟專案] 對話方塊隨即顯示。
選取您的方案,然後按一下 [開啟]。
針對方案中每個要測試的 Silverlight 專案,您都必須加入 SilverlightUIAutomationHelper.dll。 若要這樣做,以滑鼠右鍵按一下專案,然後按一下 [卸載專案]。
以滑鼠右鍵按一下卸載的專案,然後按一下 [編輯 <專案名稱>]。
您會看到後面接著 ItemGroup 節點的 PropertyGroup 節點。
若要設定用來條件式加入 SilverlightUIAutomationHelper.dll 的實際執行條件,您必須進行下列兩項修改:
若要設定實際執行條件,將下列項目加入至第一個 <PropertyGroup> 節點:
<Production Condition="'$(Production)'==''">False</Production>
若要在組建不是實際執行組建時加入 DLL,請將下列 Choose 節點插入至 PropertyGroup 節點後面,但在 ItemGroup 節點前面:
<Choose> <When Condition=" '$(Production)'=='False' "> <ItemGroup> <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper"> </Reference> </ItemGroup> </When> </Choose>
若要儲存檔案,按一下 [儲存]。
若要重新載入這些變更,以滑鼠右鍵按一下專案,然後按一下 [重新載入專案]。
警告
如果您有多個要測試的 Silverlight 專案,必須針對每個專案執行這些步驟。
若要從 Silverlight 4 專案移除 SilverlightUIAutomationHelper.dll
若要移除 SilverlightUIAutomationHelper.dll,讓它不會隨著實際執行程式碼轉散發,請將第一個 <PropertyGroup> 節點中的實際執行條件值設定為 true:
<Production Condition="'$(Production)'==''">True</Production>
這樣一來,上一個程序中加入至專案的 Choose 節點便不會再加入 DLL 做為參考。
注意事項 您也可以將名為 Production 的環境變數指定為 True。 接著您可以使用 msbuild,來建置 Silverlight 專案及移除 SilverlightUIAutomationHelper.dll。