コード化された UI テストと操作の記録を拡張して Microsoft Exce をサポート
コード化された UI テストおよび操作の記録のテスト フレームワークは、すべてのユーザー インターフェイスでサポートされているとは限りません。 テストする特定の UI がサポートされていない場合があります。 たとえば、Microsoft Excel スプレッドシート向けのコード化された UI テストや操作の記録をすぐに作成することはできません。 ただし、コード化された UI テスト フレームワークの拡張機能を使用すると、特定の UI をサポートするコード化された UI テスト フレームワーク向けの独自の拡張機能を作成できます。 次のトピックでは、コード化された UI テストの作成と Microsoft Excel の操作の記録をサポートするようフレームワークを拡張する方法の例について説明します。 サポートされているプラットフォームの詳細については、「コード化された UI テストと操作の記録でサポートされている構成とプラットフォーム」を参照してください。
このセクションでは、Excel ワークシートのテストの記録と再生を行うことができるコード化された UI テストの拡張機能について説明します。 拡張機能の各部分については、それぞれの拡張機能を作成する開発者向けに、このセクションとコード コメントで説明します。
アーキテクチャの概要
サンプルのダウンロード
サンプルは、CodedUIExtensibilitySample.sln ソリューションの次の 4 つのプロジェクトで構成されています。
CodedUIextensibilitySample
ExcelCodedUIAddInHelper
ExcelUICommunicationHelper
SampleTestProject
この圧縮されたプロジェクト ファイルをダウンロードするには、次の Microsoft Web サイト を使用してください。
サンプルについての詳細
次のセクションでは、サンプルとその構造の詳細について説明します。
Microsoft Excel アドイン: ExcelCodedUIAddinHelper
このプロジェクトには、Excel プロセスで実行するアドインが含まれています。 アドイン プロジェクトの概要については、「コード化された UI テスト用の Excel アドインのサンプル」を参照してください。
詳細については、「チュートリアル : 初めての Excel 用アプリケーション レベルのアドインの作成」を参照してください。
Excel の UI 通信: ExcelUIcommunicationHelper
このプロジェクトには、コード化された UI テスト フレームワークと Excel の間でデータを渡すのに使用する IExcelUICommunication インターフェイスと情報クラスが含まれています。 詳細については、「Excel Communicator インターフェイスのサンプル」を参照してください。
コード化された UI テストの拡張機能: CodedUIExentsibilitySample
このプロジェクトには、Excel ワークシートのテストで使用するカスタム クラスが含まれています。 それぞれのクラスのコードは、自己記述的です。 ただし、各カスタム クラスについて簡単に説明しています。 詳細については、「Excel 用にコード化された UI テストの拡張子のサンプル」を参照してください。
アドインと拡張機能の配置
すべてのプロジェクトとオブジェクトを作成したら、提供された CopyDrop.bat ファイルを管理者として実行します。 このファイルは、ExcelCodedUIAddinHelper DLL ファイルと PDB ファイルを "%CommonProgramFiles%\Microsoft Shared\VSTT\10.0\UITestExtensionPackages\*.*" にコピーし、ExcelUICommunicationHelper DLL ファイルと PDB ファイルを "%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies" にコピーします。 コピーの正確なパスの調整が必要になる場合がありますが、追加のインストールを行う必要はありません。 64 ビット コンピューターでは、32 ビット Visual Studio Premium コマンド プロンプトを使用して、CopyDrop.bat ファイルを実行します。
SampleTestProject を使用した Excel のテスト
所有していない特定の Excel バージョンを使用する、提供されたテスト プロジェクトでのテストを実行できます。または、独自のテスト プロジェクトを作成して、独自のテストを記録できます。 詳細については、「方法: コード化された UI テストを作成する」を参照してください。