コード化された UI テストと操作の記録を拡張して Microsoft Exce をサポートExtending Coded UI Tests and Action Recordings to Support Microsoft Excel

コード化された UI テストおよび操作の記録のテスト フレームワークは、すべてのユーザー インターフェイスでサポートされているとは限りません。The testing framework for coded UI tests and action recordings does not support every possible user interface. テストする特定の UI がサポートされていない場合があります。It might not support the specific UI that you want to test. たとえば、Microsoft ExcelMicrosoft Excel スプレッドシート向けのコード化された UI テストや操作の記録をすぐに作成することはできません。For example, you cannot immediately create a coded UI test or an action recording for a Microsoft ExcelMicrosoft Excel spreadsheet. ただし、コード化された UI テスト フレームワークの拡張機能を使用すると、特定の UI をサポートするコード化された UI テスト フレームワーク向けの独自の拡張機能を作成できます。However, you can create your own extension to the coded UI test framework that will support your specific UI by taking advantage of the extensibility of the coded UI test framework. 次のトピックでは、コード化された UI テストの作成と Microsoft ExcelMicrosoft Excel の操作の記録をサポートするようフレームワークを拡張する方法の例について説明します。The following topic gives an example of how to extend the framework to support the creation of coded UI tests and action recordings for Microsoft ExcelMicrosoft Excel. サポートされているプラットフォームの詳細については、「コード化された UI テストと操作の記録でサポートされている構成とプラットフォーム」 を参照してください。For more information about the platforms that are supported, see Supported Configurations and Platforms for Coded UI Tests and Action Recordings.

RequirementsRequirements

  • Visual Studio EnterpriseVisual Studio Enterprise

    このセクションでは、Excel ワークシートのテストの記録と再生を行うことができるコード化された UI テストの拡張機能について説明します。This section presents a coded UI test extension that can record and play back tests of Excel Worksheets. 拡張機能の各部分については、それぞれの拡張機能を作成する開発者向けに、このセクションとコード コメントで説明します。Each part of the extension is explained in this section and in the code comments for developers who want to create just such an extension.

    UI テストのアーキテクチャUI Test Architecture
    アーキテクチャの概要Architecture Overview

サンプルのダウンロードDownload the sample

サンプルは、CodedUIExtensibilitySample.sln ソリューションの次の 4 つのプロジェクトで構成されています。The sample consists of four projects in the CodedUIExtensibilitySample.sln solution:

  • CodedUIextensibilitySampleCodedUIextensibilitySample

  • ExcelCodedUIAddInHelperExcelCodedUIAddInHelper

  • ExcelUICommunicationHelperExcelUICommunicationHelper

  • SampleTestProjectSampleTestProject

    このブログの投稿からサンプルを入手してください。Get the sample from this blog post.

注意

サンプルは、Microsoft Excel 2010 での使用を意図しています。The sample is intended for use with Microsoft Excel 2010. Microsoft Excel の他のバージョンでも使用できる可能性がありますが、現時点ではサポートされていません。The sample may work with other versions of Microsoft Excel, but it is not currently supported.

サンプルについての詳細Details about the sample

次のセクションでは、サンプルとその構造の詳細について説明します。The following sections provide information about the sample and its structure.

Microsoft Excel アドイン: ExcelCodedUIAddinHelperMicrosoft Excel Add-in: ExcelCodedUIAddinHelper

このプロジェクトには、Excel プロセスで実行するアドインが含まれています。This project includes an add-in that runs in the Excel process. アドイン プロジェクトの概要については、「コード化された UI テスト用の Excel アドインのサンプル」 を参照してください。See Sample Excel Add-In for Coded UI Testing for a brief overview of the add-in project.

詳細については、「チュートリアル : 初めての Excel 用 VSTO アドインの作成」 を参照してください。For more information, see Walkthrough: Creating Your First VSTO Add-in for Excel.

Excel の UI 通信: ExcelUIcommunicationHelperExcel UI communication: ExcelUIcommunicationHelper

このプロジェクトには、コード化された UI テスト フレームワークと Excel の間でデータを渡すのに使用する IExcelUICommunication インターフェイスと情報クラスが含まれています。This project includes the IExcelUICommunication interface and the information classes that are used to pass data between the Coded UI Testing Framework and Excel. 詳細については、「Excel Communicator インターフェイスのサンプル」を参照してください。For more information, see Sample Excel Communicator Interface.

コード化された UI テストの拡張機能: CodedUIExentsibilitySampleCoded UI Test Extension: CodedUIExentsibilitySample

このプロジェクトには、Excel ワークシートのテストで使用するカスタム クラスが含まれています。This project includes the custom classes that are used in tests of an Excel worksheet. それぞれのクラスのコードは、自己記述的です。The code for each of these classes is fairly self-explanatory. ただし、各カスタム クラスについて簡単に説明しています。However, we provide a short description of each custom class. 詳細については、「Excel 用にコード化された UI テストの拡張子のサンプル」 を参照してください。For more information, see Sample Coded UI Test Extension for Excel.

アドインと拡張機能の配置Deploying Your Add-in and Extension

すべてのプロジェクトとオブジェクトを作成したら、提供された CopyDrop.bat ファイルを管理者として実行します。After you have created all projects and objects, run the provided CopyDrop.bat file as an administrator. このファイルは、ExcelCodedUIAddinHelper の DLL ファイルおよび PDB ファイルを以下の場所にコピーします。This file copies the ExcelCodedUIAddinHelper DLL and PDB files to:

"%CommonProgramFiles(x86)%\Microsoft Shared\VSTT\<version number>\UITestExtensionPackages\*.*"。ここで、バージョン番号は 11.0、12.0 など、Visual Studio のバージョンに基づいたものとなります。"%CommonProgramFiles(x86)%\Microsoft Shared\VSTT\<version number>\UITestExtensionPackages\*.*", where version number could be 11.0, 12.0 etc based on your Visual Studio version.

ExcelUICommunicationHelper の DLL ファイルおよび PDB ファイルは、"%ProgramFiles(x86)%\Microsoft Visual Studio <version number>\Common7\IDE\PrivateAssemblies" にコピーされます。The ExcelUICommunicationHelper DLL and PDB files are copied to "%ProgramFiles(x86)%\Microsoft Visual Studio <version number>\Common7\IDE\PrivateAssemblies".

コピーの正確なパスの調整が必要になる場合がありますが、追加のインストールを行う必要はありません。You might have to adjust the exact copy paths, but no additional installation is required. 64 ビット コンピューターでは、32 ビット Visual Studio Enterprise コマンド プロンプトを使用して、CopyDrop.bat ファイルを実行します。On a 64-bit machine, use the 32-bit Visual Studio Enterprise command prompt to run the CopyDrop.bat file.

SampleTestProject を使用した Excel のテストTesting Excel with the SampleTestProject

所有していない特定の Excel バージョンを使用する、提供されたテスト プロジェクトでのテストを実行できます。または、独自のテスト プロジェクトを作成して、独自のテストを記録できます。You can run the test in the provided test project which uses a specific version of Excel that you may not have, or create your own test project and record a test of your own. 詳細については、「コード化された UI テストを作成する」 を参照してください。For more information, see Creating Coded UI Tests.

関連項目See Also

<xref:Microsoft.VisualStudio.TestTools.UITesting.UITestPropertyProvider><xref:Microsoft.VisualStudio.TestTools.UITesting.UITestPropertyProvider>
<xref:Microsoft.VisualStudio.TestTools.UITest.Extension.UITechnologyElement><xref:Microsoft.VisualStudio.TestTools.UITest.Extension.UITechnologyElement>
<xref:Microsoft.VisualStudio.TestTools.UITest.Common.UITestActionFilter><xref:Microsoft.VisualStudio.TestTools.UITest.Common.UITestActionFilter>
<xref:Microsoft.VisualStudio.TestTools.UITest.Extension.UITestExtensionPackage><xref:Microsoft.VisualStudio.TestTools.UITest.Extension.UITestExtensionPackage>
UI オートメーションを使用してコードをテストする Use UI Automation To Test Your Code
コード化された UI テストのベスト プラクティス Best Practices for Coded UI Tests
コード化された UI テストと操作の記録でサポートされている構成とプラットフォームSupported Configurations and Platforms for Coded UI Tests and Action Recordings