DF - 디바이스 PNP 중지(리밸런스) 테스트(개발 및 통합)
이 테스트는 디바이스 드라이버로의 IRP_MN_QUERY_STOP_DEVICE PnP IRP로 이어지는 리밸런스 프로시저를 시작합니다.
스택의 드라이버가 이 IRP에 실패하면 리밸런스 프로시저가 중단됩니다. Windows Vista에서는 다단계 리밸런스가 지원됩니다. 리프가 아닌 디바이스 노드에서 리밸런스가 시작되면 해당 디바이스 노드를 루트로 가진 디바이스 트리에 있는 모든 디바이스 스택도 다시 리밸런스를 거칩니다. 또한 하위 디바이스 스택이 쿼리 중지에 실패하면 전체 리밸런스 프로시저가 중단됩니다. 따라서 드라이버는 합리적인 이유 없이 쿼리 중지에 실패해서는 안 됩니다. 이 실패가 발생하면 PnP 관리자는 쿼리 중지를 보낸 모든 디바이스 스택에 중지 취소(IRP_MN_CANCEL_STOP)를 보냅니다.
관련된 모든 디바이스 스택이 쿼리 중지를 통과하는 경우, 테스트는 리밸런스를 계속 진행하며 디바이스의 리소스 요구 사항을 찾기 위해 IRP_MN_QUERY_RESOURCE_REQUIREMENTS 및 IRP_MN_FILTER_RESOURCE_REQUIREMENTS IRPS를 보냅니다.
이 시점 이후에는 대상 디바이스가 리소스를 사용하는지 여부에 따라 두 가지 경로가 가능합니다.
디바이스에서 리소스를 사용하지 않는 경우 PnP 관리자 자체는 최적화 방법으로 중지 취소(IRP_MN_CANCEL_STOP_DEVICE)를 보냅니다.
디바이스가 실제로 리소스를 사용하는 경우 IRP_MN_STOP_DEVICE 및 IRP_MN_START_DEVICE IRP로 리밸런스 프로시저가 완료됩니다.
이 테스트를 사용하면 디바이스의 리소스가 변경되지 않습니다.
- 테스트 이진: Devfund_PnPDTest.dll
- 테스트 방법: PNPTryStopAndRestartDevice
EDT(고급 디바이스 테스트) 지원을 사용하지 않도록 설정 테스트는 DQ 매개 변수를 사용하여 지정된 디바이스에서 상위 필터로 테스트 필터 드라이버(msdmfilt.sys)를 제거합니다. 이 테스트 필터는 이 테스트 범주에서 실행 중인 테스트의 일부로 설치됩니다.
- 테스트 이진: Devfund_PnPDTest.dll
- 테스트 방법: DisableEnhancedDeviceTestingSupport
테스트 세부 정보
사양 |
|
플랫폼 |
|
지원되는 릴리스 |
|
예상 실행 시간(분) | 3 |
범주 | 시나리오 |
시간 제한(분) | 45 |
다시 부팅 필요 | false |
특별한 구성 필요 | true |
형식 | automatic |
추가 설명서
이 기능 영역의 테스트에는 다음 항목에서 찾을 수 있는 필수 조건, 설정, 문제 해결 정보를 포함한 추가 설명서가 있을 수 있습니다.
테스트 실행
테스트를 실행하기 전에 테스트 요구 사항: Device.Fundamentals 안정성 테스트 필수 구성 요소에 설명된 대로 테스트 설정을 완료합니다.
문제 해결
HLK 테스트 실패의 일반적인 문제 해결은 Windows HLK 테스트 실패 문제 해결을 참조하세요.
HLK 및 WDK의 Device Fundamentals 테스트와 관련된 문제 해결 정보는 Device.DevFund 추가 설명서를 참조하세요.
추가 정보
매개 변수
매개 변수 이름 | 매개 변수 설명 |
---|---|
DQ | 대상 디바이스를 식별하는 데 사용되는 WDTF SDEL 쿼리 - https://go.microsoft.com/fwlink/?LinkId=232678 |
Wpa2PskAesSsid | DUT 또는 자식 디바이스 중 하나가 WiFi 어댑터인 경우에만 필요합니다. 테스트에서 WiFi 어댑터를 테스트하는 데 사용할 수 있는 WPA2 AES WiFi 네트워크의 SSID를 제공합니다. 기본값은 ‘kitstestssid’입니다. |
Wpa2PskPassword | DUT 또는 자식 디바이스 중 하나가 WiFi 어댑터인 경우에만 필요합니다. Wpa2PskAesSsid 매개 변수를 사용하여 지정된 WPA2 AES WiFi 네트워크의 암호를 제공합니다. 기본값은 'password'입니다. |
WDTFREMOTESYSTEM | DUT 또는 자식 디바이스 중 하나가 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 요청을 보냅니다. |