コード化された UI テストと操作の記録を拡張して Microsoft Exce をサポート
コード化された UI テストおよび操作の記録のテスト フレームワークは、すべてのユーザー インターフェイスでサポートされているとは限りません。テストする特定の UI がサポートされていない場合があります。たとえば、Microsoft Excel スプレッドシート向けのコード化された UI テストや操作の記録をすぐに作成することはできません。ただし、コード化された UI テスト フレームワークの拡張機能を使用すると、特定の UI をサポートするコード化された UI テスト フレームワーク向けの独自の拡張機能を作成できます。次のトピックでは、コード化された UI テストの作成と Microsoft Excel の操作の記録をサポートするようフレームワークを拡張する方法の例について説明します。サポートされているプラットーフォームの詳細については、「コード化された UI テストと操作の記録でサポートされている構成とプラットフォーム」を参照してください。
要件
- Visual Studio Ultimate, Visual Studio Premium
このセクションでは、Excel ワークシートのテストの記録と再生を行うことができるコード化された UI テストの拡張機能について説明します。拡張機能の各部分については、それぞれの拡張機能を作成する開発者向けに、このセクションとコード コメントで説明します。
アーキテクチャの概要
サンプルのダウンロード
サンプルは、CodedUIExtensibilitySample.sln ソリューションの次の 4 つのプロジェクトで構成されています。
CodedUIextensibilitySample
ExcelCodedUIAddInHelper
ExcelUICommunicationHelper
SampleTestProject
このブログの投稿からサンプルを入手してください。
[!メモ]
サンプルは、Microsoft Excel 2010 での使用を意図しています。Microsoft Excel の他のバージョンでも使用できる可能性がありますが、現時点ではサポートされていません。
サンプルについての詳細
次のセクションでは、サンプルとその構造の詳細について説明します。
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(x86)%\Microsoft Shared\VSTT\<version number>\UITestExtensionPackages\*.*"。ここで、バージョン番号は 11.0、12.0 など、Visual Studio のバージョンに基づいたものとなります。
ExcelUICommunicationHelper の DLL ファイルおよび PDB ファイルは、"%ProgramFiles(x86)%\Microsoft Visual Studio <version number>\Common7\IDE\PrivateAssemblies” にコピーされます。
コピーの正確なパスの調整が必要になる場合がありますが、追加のインストールを行う必要はありません。64 ビット コンピューターでは、32 ビット Visual Studio Premium コマンド プロンプトを使用して、CopyDrop.bat ファイルを実行します。
SampleTestProject を使用した Excel のテスト
所有していない特定の Excel バージョンを使用する、提供されたテスト プロジェクトでのテストを実行できます。または、独自のテスト プロジェクトを作成して、独自のテストを記録できます。詳細については、「コード化された UI テストを作成する」を参照してください。