Visual Studio を使って実行時にドライバーをテストする方法
WDK 拡張機能は Visual Studio にドライバー テスト インターフェイスを提供して、ネットワーク上のテスト コンピューターで簡単にドライバーのビルド、展開、インストール、テストを実行できるようにします。WDK にはデバイス ドライバー テストのコレクションが用意されていて、ドライバーの機能のテストに使うことができます。
必要条件
- インストールの準備ができているドライバー パッケージ。まずドライバーを作ってビルドし、次にインストール用のドライバー パッケージを作る必要があります。 詳しくは、「ドライバーのビルド」と「ドライバー パッケージの作成」をご覧ください。
- ドライバーはテスト署名されている必要があります。詳しくは、「ドライバーへの署名」をご覧ください。
- テスト コンピューター。テスト コンピューターは、開発に使ったコンピューターと同じネットワーク上にある必要があります。両方のコンピューターが同じドメインまたは同じワークグループのネットワークに接続されている必要があります。テスト コンピューターでは、テスト対象のバージョンの Windows が実行されている必要があります。テストとデバッグ用に、Windows のチェック ビルド (またはチェック ビルドの一部) をインストールすることもできます。
- テスト対象のデバイス。
- (Recommended) テスト コンピューターへのカーネル モード デバッグ接続を設定します。カーネル モード デバッグ用のネットワーク接続を使うには、ターゲット コンピューターで Windows 8 が実行されている必要があります。Windows 7 または Windows Vista が実行されているコンピューターでは、カーネル モード デバッグ用に USB、1394、シリアル接続を設定できます。詳しくは、「ドライバーの展開およびテストのためのコンピューターのプロビジョニング (WDK 8.1)」をご覧ください。
手順
ステップ 1: テスト用のコンピューターの構成
Visual Studio から、テスト用のコンピューターの構成とプロビジョニングを行うことができます。テスト コンピューターを構成すると、WDK ドライバー テスト フレームワークは自動的にテスト コンピューターのリモート デバッグを有効にして、必要なテスト バイナリとサポート ファイルを転送します。
- まだ準備ができていない場合は、「ドライバーの展開およびテストのためのコンピューターのプロビジョニング (WDK 8.1)」の指示に従ってください。
- テストするデバイスを、テスト コンピューターに接続します。
テスト コンピューターの構成とプロビジョニングが済んだら、Visual Studio を使ってドライバーの展開、テストのスケジュール、テスト コンピューター上でのドライバーのデバッグを実行できます。 展開と、ビルド時に自動的にドライバーを展開する方法について詳しくは、「テスト コンピューターへのドライバーの展開」をご覧ください。
ドライバーの検証ツール (実行時にドライバーを検証するツール) を有効にしてオプションを設定することもできます。ドライバーの検証ツールは、テスト コンピューターでテストを実行するときに、ドライバーを監視します。ドライバーの検証ツールの展開用のオプションの設定について詳しくは、「ドライバー プロジェクトのドライバーの検証ツール プロパティ」をご覧ください。
Visual Studio 以外でテストを実行することもできます。詳しくは、「コマンド プロンプトから実行時にドライバーをテストする方法」をご覧ください。 WDK 8.1 以降、コマンド スクリプトを使って、テスト コンピューターで HCK テスト スイートをコピーおよび実行できるようになりました。「WDK 8.1 の HCK テスト スイートを実行する方法」をご覧ください。
ステップ 2: テスト コンピューターで実行する HCK テスト スイートの選択 (WDK 8.1 を使う場合)
WDK 8.1 以降では、テスト コンピューターで実行する HCK テスト スイートを選択できるようになりました。HCK テスト スイートには、Device Fundamentals テストや、グラフィックス、イメージング、ワイヤレス LAN、モバイル ブロードバンド (CDMA と GSM)、WiFi Direct デバイス用の Windows ハードウェア認定キット (HCK) テストが含まれています。
- 「WDK 8.1 の HCK テスト スイートを実行する方法」をご覧ください。
ステップ 3: テスト コンピューターで実行するテストの選択 (WDK 8 と WDK 8.1)
さまざまなテスト対象でのドライバーのテストを簡単にするため、テストはテスト グループと呼ばれる単位でテスト システムに対して実行するようにスケジュールされます。ドライバー テスト グループは、テスト コンピューターで実行するよう選択したテストのコレクションです。ドライバー テスト グループを使うと、テストや各テスト成功の結果を整理しやすくなります。テスト結果は個別のフォルダーに保存できます。 テスト グループの作成と管理、テスト グループ内でテストに渡すパラメーターの変更、テスト システムに対するテスト実行のスケジュールを行うことができます。
[ドライバー] メニューで、[テスト]、[Test Group Explorer] (テスト グループ エクスプローラー) の順にクリックします。
[Driver Test Group Explorer] (ドライバー テスト グループ エクスプローラー) ウィンドウで、[Create a new test group] (新しいテスト グループの作成) ボタンをクリックします。または、[ドライバー] メニューで New Test Group をクリックします。
作成したグループの [Driver Test Group] (ドライバー テスト グループ) ウィンドウで、[Test Group Name] (テスト グループ名) ボックスにグループを識別する名前を入力します。既定の名前は Driver Test Group_nnnnn です。nnnnn は、このテスト グループの番号を表します。
[Add/Remove Tests] (テストの追加と削除) をクリックします。
[Add or Remove Driver Tests] (ドライバー テストの追加または削除) ダイアログ ボックスで、ドライバー テストのカテゴリとアーキテクチャ (すべて、x86、x64、ARM) を指定できます。 既定ではすべてのテストが表示されます。テストのカテゴリを表示するには、[Driver Test Categories] (ドライバー テスト カテゴリ) ドロップダウン リスト内のフォルダーをクリックします。
たとえば、WDK 8 において Windows ハードウェア認定キット (HCK) で使われるすべての Device Fundamental テストを選ぶには、[すべてのテスト]、[Certification] (認定)、[Device Fundamentals] (Device Fundamental) の順にクリックします。テストについて詳しくは、「Device Fundamental テストを選んで構成する方法」をご覧ください。
WDK 8.1 では、Device Fundamentals テストは [All Tests] (すべてのテスト)、[HCK Tests] (HCK テスト)、[Certification] (認定) の下の [Device Fundamentals] (Device Fundamentals) フォルダーにあります。WDK 8.1 では、[Driver Test Categories] (ドライバー テスト カテゴリ) に HCK (基本) テストが含まれています。詳しくは、「WDK 8.1 の HCK テスト スイートを実行する方法」をご覧ください。
目的とするテスト コンピューターのアーキテクチャ (x86、x64、ARM) に対応したテストを必ず選択してください。 [Architecture Filter] (アーキテクチャ フィルター) を使って、テスト コンピューターで動作するテストだけを表示します。
[>>] をクリックして、選択したテストを追加します。
ステップ 4: パラメーターの構成
テスト グループのテストを選んだら、ドライバー テストに渡される任意のランタイム パラメーターを構成できます。 たとえば、多くの Device Fundamental テストには、デバイスの照会を表すパラメーター DQ があります。 これは、Simple Data Evaluation Language (SDEL) クエリです。Windows ドライバー テスト フレームワークには、属性や関係に基づいたターゲット収集タスクを簡略化するためのクエリ言語として、SDEL が用意されています。
たとえば、USB デバイスのみにテストを実行するには、デバイス クエリ class='usb' を使います。 テスト グループ内の各テスト パラメーターの値は変更できます。
[Driver Test Group] (ドライバー テスト グループ) ウィンドウでテスト名をクリックすることで、テストのすべての実行時テスト パラメーターを表示および編集できます。[Driver Test Group] (ドライバー テスト グループ) ウィンドウには、選択したテストとテスト パラメーターの説明が表示されます。テスト パラメーターの設定について詳しくは、「Device Fundamental テストを選んで構成する方法」をご覧ください。
テストを選択してパラメーターを設定し、グループに名前を付けたら、[保存] をクリックします。
テスト グループを保存すると、このテスト グループが現在選択されているテスト グループになり、テスト グループ名が [Driver Test] (ドライバー テスト) ツール バーに表示されます。 これで、現在選択されているリモート テスト コンピューター ([Driver Test] (ドライバー テスト) ツール バーに表示されています) に対してテストを実行できます。
ステップ 5: ドライバーのビルドと展開
- [ビルド] メニューの [ソリューションの配置] をクリックします。
ビルド時に自動的にドライバーを展開する方法について詳しくは、「テスト コンピューターへのドライバーの展開」をご覧ください。テスト コンピューターでのドライバーの検証ツール オプションの自動設定について詳しくは、「ドライバー プロジェクトのドライバーの検証ツール プロパティ」をご覧ください。テスト コンピューターで、ドライバーの検証ツールを常に有効にしておく必要があります。
ステップ 6: テスト コンピューターでのテストの実行
- [ドライバー] メニューで、[テスト]、[テストの実行] の順にクリックします。 [テストの実行] は既定で、現在選択されているテスト グループのすべてのテストを実行します。
注釈
ドライバー テストとテスト カテゴリについて詳しくは、「Device Fundamental テストを選んで構成する方法」をご覧ください。テスト フレームワークについて詳しくは、「Test Authoring and Execution Framework (TAEF)」と「Windows ドライバー テスト フレームワーク (WDTF)」をご覧ください。
独自のドライバー テストを作成して、テスト コンピューターに展開することができます。詳しくは、「ドライバー テストを作成する方法」をご覧ください。
開発サイクルの初期に Visual Studio で Device Fundamental テストを実行しておくと、最終的に Windows ハードウェア認定キット (HCK) を使ってドライバーをテストする際の負担を減らすことができます。
関連トピック
Device Fundamental テストを選んで構成する方法