Visual Studio 2010 Ultimate または Visual Studio 2010 Premium を使用すると、コード化された UI テストで Silverlight 4 アプリケーションを対象とする自動テストを作成できます。 Microsoft テスト マネージャー を使用して、Silverlight 4 アプリケーションを対象とする手動テストの操作の記録を作成することもできます。
重要
Internet Explorer ウィンドウでホストされる Silverlight 4 アプリケーションのみがサポートされています。 別のブラウザーを使用してホストされる、またはブラウザーでホストされない Silverlight 4 アプリケーションはサポートされていません。
コード化された UI テストまたは操作の記録を作成できるように Silverlight アプリケーションを設定するには、次の主要なタスクを実行する必要があります。
参照として 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 Exce をサポート」を参照してください。
次の手順に従って、SilverlightUIAutomationHelper.dll を追加または削除します。
Silverlight 4 プロジェクトへの SilverlightUIAutomationHelper.dll の追加
Silverlight 4 プロジェクトからの SilverlightUIAutomationHelper.dll の削除
各 Silverlight コントロールに一意の識別プロパティを設定する方法については、「テスト用に Silverlight コントロールの一意のオートメーション プロパティを設定する」を参照してください。
Silverlight 4 プロジェクトに SilverlightUIAutomationHelper.dll を追加するには
いずれかの Silverlight プロジェクトを含むソリューションを開きます。そのためには、[ファイル] メニューの [開く] をポイントします。 [プロジェクト/ソリューション] をクリックします。
[プロジェクトを開く] ダイアログ ボックスが表示されます。
ソリューションを選択し、[開く] をクリックします。
ソリューション内でテストする Silverlight プロジェクトごとに、SilverlightUIAutomationHelper.dll を追加する必要があります。 これを追加するには、プロジェクトを右クリックし、[プロジェクトのアンロード] をクリックします。
アンロードしたプロジェクトを右クリックし、[<project name> の編集] をクリックします。
PropertyGroup ノードと、その後に続く ItemGroup ノードが表示されます。
SilverlightUIAutomationHelper.dll を条件付きで使用するための運用条件を設定するには、次の 2 つの変更を行う必要があります。
運用条件を設定するには、次のエントリを最初の <PropertyGroup> ノードに追加します。
<Production Condition="'$(Production)'==''">False</Production>
ビルドが運用ビルドでない場合に DLL を追加するには、PropertyGroup の後、ItemGroup ノードの前に次の Choose ノードを挿入します。
<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 を削除して、この DLL が実行コードと共に再頒布されないようにするには、最初の <PropertyGroup> ノードで運用条件の値を true に設定します。
<Production Condition="'$(Production)'==''">True</Production>
このようにすると、前の手順でプロジェクトに追加した Choose ノードによって、DLL は参照として追加されなくなります。
注意
また、Production という名前の環境変数を True の値に設定することもできます。 その後、msbuild を使用して Silverlight プロジェクトを作成すると、SilverlightUIAutomationHelper.dll を削除できます。
参照
概念
自動 UI テストを使用したユーザー インターフェイスのテスト