Share via


方法: テスト中のアプリケーションの記録によるコード化された UI テストの生成

更新 : 2010 年 12 月

コード化された UI テストを作成するのに効率的な方法は、ユーザー インターフェイス要素を記録することです。

テスト中のアプリケーションの記録によるコード化された UI テストの生成

テスト中のアプリケーションを記録することにより、コード化された UI テストを生成するには

  1. ソリューション エクスプローラーで、テスト プロジェクトを右クリックし、[追加] をポイントして、[コード化された UI テスト] をクリックします。

    または

    [テスト ビュー] ウィンドウで任意の場所を右クリックして、[新しいテスト] をクリックします。 [新しいテストの追加] ダイアログ ボックスで、[コード化された UI テスト] をクリックし、[OK] をクリックします。

    または

    [テスト] メニューの [新しいテスト] をクリックします。 [新しいテストの追加] ダイアログ ボックスで、[コード化された UI テスト] をクリックし、[OK] をクリックします。

    [新しいテスト プロジェクト] ダイアログ ボックスが表示されます。

  2. 新しいコード化された UI テストの名前を入力し、[作成] をクリックします。

  3. [操作の記録、UI マップの編集、またはアサーションの追加] をクリックします。

    [コード化された UI テスト ビルダー] ダイアログ ボックスが表示されます。

  4. 記録を開始するには、[記録する] アイコンをクリックします。 必要に応じて、アプリケーションの起動など、アプリケーションに記録する操作を実行します。

    注意

    Microsoft Visual Studio 2010 Feature Pack 2 をインストールすると、Windows Internet Explorer 7 以降のバージョンを使用して、Web サイトまたは Web ベースのアプリケーションでの UI 操作を記録し、Mozilla Firefox Version 3.5 または 3.6 を使用してテストを再生できます。 この Feature Pack をダウンロードするには、Visual Studio 2010 Ultimate、Visual Studio 2010 Premium、または Test Professional 2010 と、MSDN サブスクリプション、Microsoft BizSpark、または MSDN アカデミック アライアンスが必要です。 詳細については「Windows Internet Explorer を使用したテストの記録および Firefox を使用した再生」および「Microsoft Visual Studio 2010 Feature Pack 2」を参照してください。

  5. 操作を表示するには、[記録されたステップの表示] アイコンをクリックします。

    操作が [コード化された UI テスト ビルダー - 記録された操作] ダイアログ ボックスに表示されます。

    注意

    テスト対象のアプリケーションの起動操作を記録しない場合は、[記録する] アイコンをクリックする前にアプリケーションを起動する必要があります。

  6. 記録を終了するには、[コードの生成] アイコンをクリックします。 [メソッド名] にコード化された UI テスト メソッド名を入力し、[追加と生成] をクリックします。

    入力した名前がたとえば AddTwoNumbers の場合、次のようにコードが生成されます。

    • UI マップ (UIMap.uitest) に UI コントロールを追加します。

    • UI マップに AddTwoNumbers という名前のメソッドを追加します。 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));
      }
      
    • AddTwoNumbers メソッドを呼び出すコード化された 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();
            }
      

    記録されたメソッドの名前を選択する場合、記録した操作を説明するような名前を選択します。

  7. 記録した操作を保持しない場合は、[記録されたステップの表示] アイコンをクリックします。 保持しない操作を選択し、[削除] アイコンをクリックします。

  8. UI コントロールのアサーションを生成するには、十字アイコンをクリックし、正しいかどうかを確認するコントロールにドラッグします。

    [コード化された UI テスト ビルダー - アサーションの追加] ダイアログ ボックスが表示されます。

  9. 縦棒をクリックし、UI マップを表示します。

    確認する UI コントロールが強調表示されます。

  10. 確認する UI コントロールのプロパティを右クリックし、[アサーションの追加] をポイントします。

    [アサーションの追加] ダイアログ ボックスが表示されます。

  11. アサーションの [比較子] をクリックします。

  12. [比較対象値] にアサーションの値を入力します。

  13. アサーションを追加するために、[OK] をクリックします。

  14. テスト用のアサーションをすべて追加したら、[コード化された UI テスト ビルダー - アサーションの追加] ダイアログ ボックスを閉じます。

  15. アサーション用のコードを生成するには、[コードの生成] アイコンをクリックします。

    [コード化された UI テスト ビルダー - コードの生成] ダイアログ ボックスが表示されます。

  16. [メソッド名] にコード化された UI テスト メソッド名を入力し、[追加と生成] をクリックします。

    入力した名前がたとえば AssertForAddTwoNumbers の場合、次のようにコードが生成されます。

    • UI マップ (UIMap.uitest) に AssertForAddTwoNumbers という名前のメソッドを追加します。 UIMap.Designer.cs ファイルで、そのメソッドを参照できます。 このメソッドは、追加した Assert ステートメントを実行します。

            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);
            }
      
    • コード化された UI テスト ファイルのテスト メソッドに、AssertForAddTwoNumbers という Assert メソッドの呼び出しを追加します。

            [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();
            }
      

    Assert ステートメントを持つメソッドの名前を選択する場合は、作成したアサーションを説明するような名前を選択します。

  17. [閉じる] アイコンをクリックして、コード化された UI テスト ビルダーを閉じます。

  18. (省略可能) コード化された UI テストの実行時にアプリケーションを起動するコードを追加するには、アプリケーションの起動処理を記録し、それをメソッドに保存します。 テストの開始時にこのメソッドを呼び出すことができます。

    注意

    [TestInitialize] 属性で識別されるテスト初期化メソッドを追加できます。このメソッドは、各テスト メソッドの開始時にコードを実行します。 たとえば、アプリケーションを起動するメソッドは、TestInitialize メソッドから呼び出すことができます。

  19. (省略可能) コード化された UI テストの実行時にアプリケーションを終了するコードを追加するには、アプリケーションの終了処理を記録し、それをメソッドに保存します。

    ブラウザーまたはアプリケーションを終了しない場合、テストの完了後も開かれたままになります。

    注意

    [TestCleanup] 属性で識別されるテスト クリーンアップ メソッドを追加できます。このメソッドは、各テスト メソッドの終了時にコードを実行します。 たとえば、アプリケーションを終了するメソッドは、TestCleanup メソッドから呼び出すことができます。

  20. テストを実行するには、テスト メソッド内を右クリックし、[テストの実行] をクリックします。 コード化された UI テストの実行方法の詳細については、「自動テストの実行」を参照してください。

    注意

    特定のデータを使用してコード化された UI テストを作成した後、異なるデータのセットを使用してコード化された UI テストを複数回実行して、さまざまな条件をテストできます。 これを行うには、データ ソースからコード化された UI テストにパラメーターを追加して、データ ドリブンのコード化された UI テストを作成します。 詳細については、「方法: データ ドリブンのコード化された UI テストを作成する」を参照してください。

    必要に応じて、コントロールを追加し、UI テスト ビルダーを使用して検証できます。 詳細については「方法: コード化された UI テスト ビルダーを使用して UI コントロールと検証コードを追加する」を参照してください。

    注意

    コード化された UI テスト エディターを使用すると、コード化された UI テストを簡単に変更できます。 Coded UI Test Editor (コード化された UI テスト エディター) を使用すると、テスト メソッドを検索、表示、および編集できます。 また、UI コントロール マップ内の UI 操作および関連コントロールを編集することもできます。 Coded UI Test Editor (コード化された UI テスト エディター) は、Microsoft Visual Studio 2010 Feature Pack 2 に含まれています。 この Feature Pack をダウンロードするには、Visual Studio 2010 Ultimate、Visual Studio 2010 Premium、または Test Professional 2010 と、MSDN サブスクリプション、Microsoft BizSpark、または MSDN アカデミック アライアンスが必要です。 詳細については「コード化された UI テスト エディターを使用したコード化された UI テストの編集」および「Microsoft Visual Studio 2010 Feature Pack 2」を参照してください。

参照

処理手順

方法: コード化された UI テスト ビルダーを使用して UI コントロールと検証コードを追加する

方法: 操作の記録からコード化された UI テストを生成する

方法: コード化された UI テストを作成する

参照

UIMap

Point

概念

自動 UI テストを使用したユーザー インターフェイスのテスト

コード化された UI テストのベスト プラクティス

コード化された UI テストと操作の記録でサポートされている構成とプラットフォーム

その他の技術情報

方法: データ ドリブンのコード化された UI テストを作成する

履歴の変更

日付

履歴

理由

2010 年 12 月

新しいコード化された UI テストを作成するオプションとして [テスト リスト] ウィンドウを削除。

次のいずれかのトークンに置換。

カスタマー フィードバック