DF - PNP 削除デバイス テスト (信頼性)

このテストでは、EDT フィルター ドライバーを使用して、IRP_MN_QUERY_REMOVE_DEVICE と IRP_MN_REMOVE_DEVICE をターゲット デバイス スタックに送信します。

テストでは、ターゲット デバイス スタックに上位フィルター ドライバーをインストールする処理を試行します。 この試行により、query-remove IRP が生成されます。

この query-remove IRP が失敗した場合、テストによってコンピューターが再起動され、フィルター ドライバーがデバイス スタックに取得されます。 削除要求が拒否されない場合、デバイス スタックは削除され、デバイス スタックのフィルター ドライバーを使用して再起動されます。

テストでは、セットアップ API を使用して、query-remove IRP をデバイス スタックに送信します。 フィルター ドライバーがこの削除要求に失敗するため、cancel-remove IRP が送信されます。 フィルター ドライバーは、cancel-remove が正常に終了したことをアサートします。

次に、テスト アプリケーションは、適切なクラス インストーラーと登録されているすべての共同インストーラーを呼び出して、デバイスを無効または有効にし、さらに削除または再列挙します (これにより、クラスおよび共同インストーラーによる DIF_PROPERTYCHANGE と DICS_DISABLE、DICS_ENABLE、および DICS_PROPCHANGE の処理がテストされます)。 IRP_MN_REMOVE_DEVICE を受信すると、フィルター ドライバーは、下位のドライバーが正常に完了したことをアサートします。

これらの各手順には、暫定的な削除要求が含まれます。 要求が拒否された場合、デバイスは削除されません。 USB カメラでビデオをストリーミングしているときや、ターゲット デバイスがブート パスまたはページング パスにある場合など、必要に応じて削除要求を拒否することを選択できます。 すべての削除要求を単純に失敗させることは、一般的には適切な方法ではないことに注意してください。 すべての削除要求が失敗しても、そのドライバーが remove を受信しないことは保証されません。なぜなら、突然の削除の後に remove IRP が発行されるか、またはデバイス スタックでユーザーが start IRP に失敗する場合があるためです。

  • テスト バイナリ: Devfund_PnPDTest.dll
  • テスト メソッド: PNPRemoveAndRestartDevice

拡張デバイス テスト (EDT) のサポートを無効にするテストでは、DQ パラメーターで指定されたデバイスの上位フィルターとして、テスト フィルター ドライバー (msdmfilt.sys) がアンインストールされます。 このテスト フィルターは、このテスト カテゴリで実行中のテストの一部としてインストールされます

  • テスト バイナリ: Devfund_PnPDTest.dll
  • テスト メソッド: DisableEnhancedDeviceTestingSupport

テストの詳細

   
仕様
  • Device.DevFund.Reliability.BasicReliabilityAndPerformance
  • Device.DevFund.Reliability.PnPIRPs
  • Device.DevFund.DriverFramework.KMDF.Reliability
  • Device.DevFund.DriverFramework.UMDF.Reliability
プラットフォーム
  • Windows 10、クライアント エディション (x86)
  • Windows 10、クライアント エディション (x64)
  • Windows Server 2016 (x64)
  • Windows 10、クライアント エディション (Arm64)
  • Windows 10、モバイル エディション (Arm)
  • Windows 10、モバイル エディション (Arm64)
サポートされているリリース
  • Windows 10
  • Windows 10 バージョン 1511
  • Windows 10 Version 1607
  • Windows 10 Version 1703
  • Windows 10 バージョン 1709
  • Windows 10 バージョン 1803
  • Windows 10 Version 1809
  • Windows 10 バージョン 1903
  • Windows 10 への次の更新プログラム
予想される実行時間 (分) 8
カテゴリ シナリオ
タイムアウト (分) 210
再起動が必要です false
特別な構成が必要です true
Type automatic

 

その他のドキュメント

この機能領域のテストには、前提条件、セットアップ、トラブルシューティング情報など、次のトピックに記載されている追加のドキュメントが含まれている場合があります。

テストの実行

テストを実行する前に、「Device.Fundamentals の信頼性テストの前提条件」で説明されているテスト要件に従って、テストのセットアップを完了します。

トラブルシューティング

HLK テスト エラーの一般的なトラブルシューティングについては、「Windows HLK テストのエラーのトラブルシューティング」を参照してください。

HLK と WDK での Device Fundamentals テストに固有のトラブルシューティング情報は、Device.DevFund のその他のドキュメントを参照してください。

詳細

パラメーター

パラメーター名 パラメーターの説明
DQ ターゲット デバイスを識別するために使用される WDTF SDEL クエリ - https://go.microsoft.com/fwlink/?LinkId=232678
Wpa2PskAesSsid DUT またはその子デバイスの 1 つが WiFi アダプターの場合にのみ必要です。 WiFi アダプターのテストに使用できる WPA2 AES WiFi ネットワークの SSID を指定してください。 既定値は 'kitstestssid' です。
Wpa2PskPassword DUT またはその子デバイスの 1 つが WiFi アダプターの場合にのみ必要です。 Wpa2PskAesSsid パラメーターを使って指定された WPA2 AES WiFi ネットワークのパスワードを指定してください。 既定値は 'password' です。
WDTFREMOTESYSTEM DUT またはその子デバイスの 1 つが、IPv6 ゲートウェイ アドレスのないワイヤード (有線) NIC である場合にのみ必要です。 必要と判断された場合は、テスト NIC がネットワーク I/O をテストするために ping を実行できる IPv6 アドレスを指定してください。 例: fe80::78b6:810:9c12:46cd
DriverVerifierAdditionalDrivers ドライバーの検証ツールを有効にする必要がある追加のドライバー
DriverVerifierExcludedFlags テスト実行の際に手動で除外できるドライバー検証ツール フラグのプレースホルダー
MultiDeviceHardwareIdSdelQueryHardwareID マルチ デバイス SDEL
MultiDeviceInstanceIdSdelWDKDeviceID DUT のデバイス ID
DriverVerifierCustomizeConfiguration このテストでドライバーの検証の設定を自動的に更新することを指定します
TestCycles テストを実行するサイクル数。
DoSimpleIO True または False。 PNP 操作の実行の前後に、テスト デバイスで SimpleIO (見つかった場合) を実行します。
IOPeriod SimpleIO の分単位の実行時間 (見つかった場合)。
DoConcurrentIO True または False。 WDTF 同時 IO インターフェイスを使って、PNP 操作の実行中に対象のデバイス スタックに I/O 要求を送信します。