HOW TO:透過記錄待測應用程式產生自動程式碼 UI 測試

更新:2010 年 12 月

錄製使用者介面項目是建立自動程式碼 UI 測試的有效方式。

透過錄製待測應用程式產生自動程式碼 UI 測試

若要透過錄製待測應用程式產生自動程式碼 UI 測試

  1. 在 [方案總管] 中,以滑鼠右鍵按一下測試專案、指向 [加入],再按一下 [自動程式碼 UI 測試]。

    -或-

    以滑鼠右鍵按一下 [測試檢視] 視窗的介面,再按一下 [新增測試]。 在 [加入新測試] 對話方塊中,按一下 [自動程式碼 UI 測試],再按一下 [確定]。

    -或-

    在 [測試] 功能表上按一下 [新增測試]。 在 [加入新測試] 對話方塊中,按一下 [自動程式碼 UI 測試],再按一下 [確定]。

    [新增測試專案] 對話方塊隨即出現。

  2. 輸入新自動程式碼 UI 測試的名稱,然後按一下 [建立]。

  3. 按一下 [錄製動作、編輯 UI 對應或加入判斷提示]。

    [自動程式碼 UI 測試產生器] 對話方塊隨即出現。

  4. 若要開始錄製,請按一下 [錄製] 圖示。 在應用程式中執行您想錄製在動作,包括啟動應用程式 (如果需要的話)。

    注意事項注意事項

    透過安裝 Microsoft Visual Studio 2010 Feature Pack 2,您就可以使用 Windows Internet Explorer 7 (或更新版本) 來記錄網站或 Web 架構應用程式的 UI 動作,然後使用 Mozilla Firefox 瀏覽器 3.5 或 3.6 版來播放測試。 若要下載此功能套件,您必須擁有 Visual Studio 2010 Ultimate、Visual Studio 2010 Premium 或 Test Professional 2010 以及 MSDN 訂閱、Microsoft BizSpark 或 MSDN Academic Alliance。 如需詳細資訊,請參閱使用 Windows Internet Explorer 記錄測試以及使用 Mozilla Firefox 播放Microsoft Visual Studio 2010 Feature Pack 2

  5. 若要檢視動作,請按一下 [顯示錄製的步驟] 圖示

    動作會在 [自動程式碼 UI 測試產生器 - 錄製的動作] 對話方塊中顯示。

    注意事項注意事項

    如果您不希望錄製啟動待測應用程式的動作,則必須先啟動應用程式,然後才按一下 [錄製] 圖示。

  6. 若要完成錄製,請按一下 [產生程式碼] 圖示。 在 [方法名稱] 中,輸入自動程式碼 UI 測試方法的名稱,然後按一下 [加入和產生]。

    例如,如果您輸入的名稱為 AddTwoNumbers,則會產生如下程式碼:

    • 將控制項加入至 UI 對應 (UIMap.uitest)

    • 將名為 AddTwoNumbers 的方法加入至 UI 對應。 您可以在 UIMap.Designer.cs 檔案中檢視方法。 此方法會執行在執行測試時錄製的動作。

      public void AddTwoNumbers()
      {
          #region Variable Declarations
          WinEdit textInput1Edit = 
              this.DemoCalculatorWindowWindow.InputNumber2Window.TextInput1Edit;
          WinEdit textInput2Edit = 
              this.DemoCalculatorWindowWindow.TextInput2Window.TextInput2Edit;
          WinButton addButton = 
              this.DemoCalculatorWindowWindow.AddWindow.AddButton;
          #endregion
      
          // Launch '%USERPROFILE%\Desktop\SimpleWinformsCalculator.exe'
          ApplicationUnderTest demoCalculatorWindowWindow = 
              ApplicationUnderTest.Launch(
                  this.AddTwoNumbersParams.DemoCalculatorWindowWindowExePath,
                  this.AddTwoNumbersParams.DemoCalculatorWindowWindowAlternateExePath);
      
          // Type '3' in 'textInput1' text box
          textInput1Edit.Text = 
              this.AddTwoNumbersParams.TextInput1EditText;
      
          // Type '4' in 'textInput2' text box
          textInput2Edit.Text = 
              this.AddTwoNumbersParams.TextInput2EditText;
      
          // Click 'Add' button
          Mouse.Click(addButton, new Point(83, 18));
      }
      
    • 在自動程式碼 UI 測試檔案中加入會呼叫 AddTwoNumbers 方法的測試方法

            [TestMethod]
            public void CodedUITestMethod1()
            {
                // To generate code for this test, select "Generate Code" 
                // from the shortcut menu and select one of the menu items.
                this.UIMap.AddTwoNumbers();
            }
      

    當您為錄製的方法選擇名稱時,請選擇能描述您所錄製動作的名稱。

  7. 如果您所錄製的動作並非想要保存的動作,您可以按一下 [顯示錄製的步驟] 圖示。 選取不要保存的動作,然後按一下 [刪除] 圖示。

  8. 若要產生 UI 控制項的判斷提示,請按一下交叉線圖示,然後將其拖曳至要驗證是否正確的控制項。

    [自動程式碼 UI 測試產生器 - 加入判斷提示] 對話方塊隨即顯示。

  9. 按一下垂直軸以檢視 UI 對應。

    您要驗證的 UI 控制項應該反白顯示。

  10. 以滑鼠右鍵按一下您要驗證的 UI 控制項屬性,然後執行 [加入判斷提示]。

    [加入判斷提示] 對話方塊隨即顯示。

  11. 選取判斷提示的 [比較子]。

  12. 在 [比較值] 中輸入判斷提示的值。

  13. 若要加入判斷提示,請按一下 [確定]。

  14. 加入測試的所有判斷提示之後,請關閉 [自動程式碼 UI 測試產生器 - 加入判斷提示] 對話方塊。

  15. 若要產生判斷提示的程式碼,請按一下 [產生程式碼] 圖示。

    [自動程式碼 UI 測試產生器 - 產生程式碼] 對話方塊隨即顯示。

  16. 在 [方法名稱] 中,輸入自動程式碼 UI 測試方法的名稱,然後按一下 [加入和產生]。

    例如,如果您輸入的名稱為 AssertForAddTwoNumbers,則會產生如下程式碼:

    • 將名為 AssertForAddTwoNumbers 的方法加入至 UI 對應 (UIMap.uitest)。 您可以在 UIMap.Designer.cs 檔案中檢視方法。 此方法會執行您加入的判斷提示陳述式。

            public void AssertForAddTwoNumbers()
            {
                #region Variable Declarations
                WinEdit textAnswerEdit = 
                    this.DemoCalculatorWindowWindow.AnswerWindow.TextAnswerEdit;
                #endregion
      
                // Verify that the 'textAnswer' text box's Text property 
                // is '40'
                Assert.AreEqual(
                     this.AssertForAddTwoNumbersExpectedValues.TextAnswerEditText, 
                    textAnswerEdit.Text);
            }
      
    • 將對判斷提示方法 AssertForAddTwoNumbers 的呼叫加入至自動程式碼 UI 測試檔案中的測試方法

            [TestMethod]
            public void CodedUITestMethod1()
            {
                // To generate code for this test, select "Generate Code" 
                // from the shortcut menu and select one of the menu items.
                this.UIMap.AddTwoNumbers();
                this.UIMap.AssertForAddTwoNumbers();
            }
      

    當您為具有判斷提示陳述式的方法選擇名稱時,請選擇能描述這些您所建立之判斷提示的名稱。

  17. 按一下 [關閉] 圖示,以關閉 [自動程式碼 UI 測試產生器]。

  18. (選擇性) 若要加入程式碼以在執行自動程式碼 UI 測試時啟動應用程式,請錄製應用程式的啟動順序,並將其儲存成方法。 您可以在測試啟動時呼叫該方法。

    注意事項注意事項

    您可以加入測試初始化方法 (以 [TestInitialize] 屬性識別),以便在每個測試方法啟動時執行程式碼。 例如,您可以從 TestInitialize 方法呼叫啟動應用程式的方法。

  19. (選擇性) 若要加入程式碼以在執行自動程式碼 UI 測試時關閉應用程式,請錄製應用程式的關閉順序,並將其儲存成方法。

    如果您未關閉瀏覽器或應用程式,則它們在您完成測試後仍將開啟。

    注意事項注意事項

    您可以加入測試清除方法 (以 [TestCleanup] 屬性識別),以便在每個測試方法結束時執行程式碼。 例如,您可以從 TestCleanup 方法呼叫關閉應用程式的方法。

  20. 若要執行測試,請以滑鼠右鍵按一下測試方法,然後按一下 [執行測試]。 如需如何執行自動程式碼 UI 測試的詳細資訊,請參閱執行自動化測試

    注意事項注意事項

    以特定資料建立自動程式碼 UI 測試之後,您可能要以不同的資料集執行自動程式碼 UI 測試數次,以測試不同的條件。 若要這樣做,您可以將參數從資料來源加入至自動程式碼 UI 測試,以建立資料驅動型自動程式碼 UI 測試。 如需詳細資訊,請參閱 HOW TO:建立資料驅動型自動程式碼 UI 測試

    您現在可以使用 UI 測試產生器來選擇性地加入其他控制項並進行驗證。 如需詳細資訊,請參閱 HOW TO:使用自動程式碼 UI 測試產生器加入 UI 控制項和驗證程式碼.

    注意事項注意事項

    [自動程式碼 UI 測試編輯器] 可讓您輕鬆地修改自動程式碼 UI 測試。 您可以使用 [自動程式碼 UI 測試編輯器] 來找出、檢視和編輯測試方法。 您也可以在 UI 控制項對應中編輯 UI 動作及其相關聯的控制項。 [自動程式碼 UI 測試編輯器] 包含在 Microsoft Visual Studio 2010 Feature Pack 2 中。 若要下載此功能套件,您必須擁有 Visual Studio 2010 Ultimate、Visual Studio 2010 Premium 或 Test Professional 2010 以及 MSDN 訂閱、Microsoft BizSpark 或 MSDN Academic Alliance。 如需詳細資訊,請參閱使用自動程式碼 UI 測試編輯器,編輯自動程式碼 UI 測試Microsoft Visual Studio 2010 Feature Pack 2

請參閱

工作

HOW TO:使用自動程式碼 UI 測試產生器加入 UI 控制項和驗證程式碼

HOW TO:從動作記錄產生自動程式碼 UI 測試

HOW TO:建立自動程式碼 UI 測試

參考

UIMap

Point

概念

使用自動化 UI 測試進行使用者介面測試

自動程式碼 UI 測試的最佳作法

自動程式碼 UI 測試和動作記錄的支援組態和平台

其他資源

HOW TO:建立資料驅動型自動程式碼 UI 測試

變更記錄

日期

記錄

原因

2010 年 12 月

已移除 [測試清單] 視窗做為建立新自動程式碼 UI 測試的選項。

取代成下列其中一個語彙基元:

客戶回函。