다음을 통해 공유


제공된 WDTF 심플 I/O 플러그인

간단한 I/O 플러그 인은 일반 디바이스별 I/O 기능을 구현하는 WDTF(Windows 드라이버 테스트 프레임워크)에 대한 확장입니다. 테스트 중인 디바이스 유형에 대한 플러그 인이 있는 경우 디바이스 기본 테스트에서 는 WDTF 단순 I/O 인터페이스를 사용하여 I/O를 테스트합니다.

이 항목에서는 단순 I/O 플러그 인이 있는 디바이스 유형을 나열하고 디바이스 테스트에 대한 특정 요구 사항이 있는지를 나타냅니다. Windows HLK(Windows 하드웨어 랩 키트)를 사용할 때 따라야 하는 요구 사항과 동일합니다. 또한 이 항목에서는 테스트 실패 문제를 해결하고 심사하는 아이디어를 제공합니다.

디바이스 유형이 나열되지 않은 경우 만들 수 있습니다. WDTF 단순 I/O 작업 플러그 인을 사용하여 디바이스에 대한 I/O를 사용자 지정하는 방법을 참조하세요.

특정 요구 사항이 있는 디바이스 기본 테스트 목록은 특정 디바이스 구성 요구 사항이 있는 디바이스 기본 테스트를 참조하세요.

오디오

요구 사항

  • 디바이스에는 하나 이상의 렌더링 유형 엔드포인트(스피커, 헤드폰 등)가 연결되어 있어야 합니다.

  • 대상 오디오 디바이스에 HDMI 비디오 및 오디오 출력 기능이 있는 경우 오디오 테스트를 수행하려면 디바이스를 HDMI 모니터 또는 A/V 수신기와 같은 HDMI 오디오 지원 디바이스에 연결해야 합니다.

I/O 플러그인의 수행 유형 (오디오)

  • 렌더링 유형 엔드포인트에서 사인파 소리를 재생합니다. 캡처 유형 엔드포인트에서 오디오를 캡처합니다.

테스트 실패를 심사하는 방법

  • 실패한 HRESULT를 살펴보고 초기 분석을 수행합니다.
  • 테스트가 응답하지 않는 경우 대상 컴퓨터의 커널 디버거를 사용하여 근본 원인을 좁힐 수 있습니다.
  • 추적 실행:
    • 커널 추적 시작:
xperf.exe -on LOADER+PROC_THREAD+CSWITCH+DISK_IO+HARD_FAULTS+PROFILE+INTERRUPT+NETWORKTRACE+DPC+Latency+POWER -stackwalk ProcessCreate+ProcessDelete+ImageLoad+ImageUnload+ThreadCreate+ThreadDelete+CSwitch+ReadyThread+Profile+DiskFlushInit+FileFlush+RegFlush+HardFault+VirtualAlloc+VirtualFree -BufferSize 1024 -MinBuffers 512 -MaxBuffers 1024 -f Audio_SimpleIo_Kernel.etl
  • 오디오 추적 시작:
xperf.exe -start AudioSimpleIo -on Microsoft-Windows-Audio+a6a00efd-21f2-4a99-807e-9b3bf1d90285:0xffff:0x3 -BufferSize 1024 -MinBuffers 512 -MaxBuffers 1024 -f Audio_SimpleIo.etl
  • 테스트를 실행합니다.
  • 추적 중지:
xperf.exe -stop "NT Kernel Logger" Audio_SimpleIo
  • 병합 추적:
xperf.exe -merge Audio_SimpleIo_Kernel.etl Audio_SimpleIo.etl Audio_SimpleIo _Merged.etl
  • Xperf(xperfview)를 사용하여 병합된 추적 파일을 봅니다.

Bluetooth

Bluetooth 요구 사항

  • 특별한 요구 사항은 없습니다.

I/O 플러그인의 작동 유형 (Bluetooth)

CDROM

CDROM 요구 사항

  • 드라이브 문자가 할당되었습니다.
  • 미디어가 디바이스에 있습니다.
  • 삽입된 미디어에 파일이 있습니다.

I/O 플러그 인 수행 유형(CDROM)

  • CD-ROM 파일을 찾고 Win32 ReadFile API를 사용하여 읽기 작업을 수행합니다.

테스트 실패를 심사하는 방법(CDROM)

  • 테스트 컴퓨터에서 문제의 CD/DVD 드라이브로 이동하여 드라이브의 내용에 액세스할 수 있는지 확인합니다.
  • CD-Rom 단순 I/O 플러그인은 CD/DVD에서 읽기를 수행하기 위해 파일을 검색합니다. CD/DVD에 디스크에 인코딩된 파일이 있는지 확인합니다.
  • 이 간단한 I/O 플러그는 Win32 CreateFile, WriteFile, ReadFile 함수를 사용합니다. 반환되는 오류는 이러한 API의 Win32 오류 코드일 가능성이 높습니다.

디스크

디스크 요구 사항

  • 디스크에 하나 이상의 연결된 볼륨 드라이브 문자가 할당되어 있습니다.

I/O 플러그 인 수행 유형(디스크)

  • 볼륨에 간단한 I/O 플러그 인 사용합니다.

디스플레이

표시 요구 사항

  • 테스트를 위한 특별한 요구 사항은 없습니다.

I/O 플러그 인 수행 유형(표시)

  • D3DX API를 사용하여 그래픽 어댑터를 연습합니다.

테스트 실패를 심사하는 방법(표시)

  • 사용되는 API의 실패를 보고하는 테스트 로그를 살펴봅니다.

GPS 장치(및 시스템의 GPS 장치)

요구 사항(GPS)

  • 디바이스는 적절한 GPS 신호가 있는 위치에서 테스트해야 합니다.

I/O 플러그 인 수행 유형(GPS)

  • 센서용 I/O 플러그 인 사용합니다.

요구 사항(LAN)

  • 디바이스에 IPv6 주소가 있습니다.

  • 디바이스에 IPv6 게이트웨이 주소가 있습니다(그렇지 않으면 테스트 NIC가 ping할 수 있는 IPv6 주소를 사용하여 WDTFREMOTESYSTEM 매개 변수를 테스트에 전달해야 함).

  • 디바이스의 네트워크 작업 상태는 IfOperStatusUp입니다.

  • 네트워크 디바이스는 WWAN 또는 WLAN 디바이스가 아닙니다.

I/O 플러그 인 수행 유형(LAN)

  • Pings IPv6 네트워크 게이트웨이 주소입니다.

테스트 실패를 심사하는 방법(LAN)

  • 기존 IP 주소가 있는지 확인합니다.
  • 게이트웨이 IPv6 IP 주소가 있는지 확인합니다.
  • IP 게이트웨이 주소를 수동으로 확인합니다(ping.exe사용).

모바일 광대역

요구 사항(모바일 광대역)

  • 테스트를 위한 특별한 요구 사항은 없습니다.

I/O 플러그 인 수행 유형(모바일 광대역)

테스트 실패를 심사하는 방법(모바일 광대역)

  • MobileBroadbandPlugin에는 실패할 수 있는 제한된 영역이 있습니다.

    • "MobileBroadbandPlugin: 모든 모바일 광대역 인터페이스를 가져오는 중 오류가 반환되었습니다."
    • "MobileBroadbandPlugin: 인터페이스 반환 실패로 가져올 수 없음."
    • "MobileBroadbandPlugin: DeviceId를 반환합니다."
    • MobileBroadbandPlugin: 인터페이스 기능 반환 실패 발생
    • "MobileBroadbandPlugin: ReadyState에서 오류를 반환했습니다."
  • 오류를 조사하는 가장 좋은 위치는 디바이스에서 시작하여 준비 정보 또는 디바이스 기능을 나타낼 수 없는지 확인하는 것입니다. OS 추적 파일을 추가로 수집하여 디버깅을 계속해야 합니다.

    • 명령어를 실행합니다: netsh trace start wwan_dbg
    • 문제를 재현합니다.
    • 명령 실행: netsh 추적 중지

이식 가능한 디바이스

요구 사항(휴대용 디바이스)

  • 디바이스에는 폴더와 파일을 만들 수 있는 스토리지 구성 요소가 있습니다.

I/O 플러그 인 수행 유형(이식 가능한 디바이스)

  • WPD API를 사용하여 WPD 디바이스의 스토리지 구성 요소에 파일을 읽고 씁니다.

스마트 카드 판독기

요구 사항(스마트 카드 판독기)

  • 디바이스에 아테나 T0 테스트 카드가 삽입되어 있습니다.

I/O 플러그 인 수행 유형(스마트 카드 판독기)

  • 카드 판독기에서 삽입된 아테나 T0 카드에 데이터를 읽고 씁니다.

센서

요구 사항(센서)

  • GPS 디바이스는 적절한 GPS 신호가 있는 위치에서 테스트해야 합니다.

음량

요구 사항(볼륨)

  • 볼륨에 드라이브 문자가 할당되어 있습니다.
  • 볼륨에는 5MB의 여유 공간이 있습니다.
  • 볼륨은 쓰기로 보호되지 않습니다.
  • 미디어가 디바이스에 있습니다.

I/O 플러그 인 수행 유형(볼륨)

  • WDTF_Volume_IO 디렉터리를 만들고 SimpleIO.tmp 파일을 만듭니다. I/O는 ReadFileWriteFile API를 이 파일에 호출하여 수행됩니다.

테스트 실패를 심사하는 방법(볼륨)

  • 테스트 컴퓨터에서 해당 드라이브로 이동하여 드라이브의 내용에 액세스할 수 있는지 확인합니다.
  • 드라이브에 파일을 저장하려고 시도합니다. 저장하고 쉽게 액세스할 수 있는지 확인합니다.
  • 이 간단한 I/O 플러그는 Win32 CreateFile, WriteFile, ReadFile 함수를 사용합니다. 반환되는 오류는 이러한 API의 Win32 오류 코드일 가능성이 높습니다.

웹캠

요구 사항(웹캠)

  • 테스트를 위한 특별한 요구 사항은 없습니다.

    비고

    웹캠 디바이스용 단순 I/O 플러그 인은 미디어 플레이어 및 관련 기술(예: Windows 7 N 또는 Windows 7 KN)을 포함하지 않는 Windows 버전에서는 사용할 수 없는 MFPlat.dll 파일에 종속되어 있습니다. 이러한 버전의 Windows에서는 미디어 기능 팩을 설치해야 합니다. 미디어 기능 팩을 다운로드할 수 있습니다. 자세한 내용은 KB 문서 968211 참조하세요.

I/O 플러그 인 수행 유형(웹캠)

  • Media Foundation 인터페이스를 사용하여 비디오를 캡처합니다.

WLAN

요구 사항(WLAN)

I/O 플러그 인 수행 유형(WLAN)

테스트 실패를 심사하는 방법(WLAN)

Mutt를 사용하는 USB 컨트롤러와 허브

요구 사항(USB)

  • 테스트를 위한 특별한 요구 사항은 없습니다.

    디바이스에 심볼릭 링크가 있습니다.

I/O 플러그인 실행 유형(USB)

  • MICROSOFT MUTT(USB 테스트 도구) 디바이스를 사용하여 USB 전송 테스트 전송 유형으로는 제어, 대량, 등시, 인터럽트 및 SuperMUTT가 USB 3.0 컨트롤러에 연결된 경우에만 지원되는 스트림 전송이 포함됩니다.

테스트 실패를 심사하는 방법(USB)

  • 먼저 테스트 로그 파일의 메시지를 검사합니다.
  • USB 2.0 및 USB 3.0 스택에서 ETW(Windows용 이벤트 추적)를 사용하도록 설정하여 추가로 조사합니다.

특정 디바이스 구성 요구 사항이 있는 디바이스 기본 테스트

다음 디바이스 기본 테스트를 실행하기 전에 특정 디바이스 유형에 대해 이 항목에 설명된 요구 사항에 따라 테스트 컴퓨터의 디바이스를 구성해야 합니다.

  • PCI 루트 포트 서프라이즈 제거 테스트(PCI 디바이스만 해당)
  • 디바이스 경로 연습기 테스트(인증)
  • IO 전후(인증)를 사용하여 절전 모드 및 PNP(비활성화 및 활성화)
  • 플러그 앤 플레이 드라이버 테스트(인증)
  • 동시 하드웨어 및 운영 체제(CHAOS) 테스트(인증)
  • IO 처리 전과 후에 다시 설치 (인증)
  • 파일 시스템 일관성에 대한 디바이스 설치 확인(인증)
  • 다른 디바이스 안정성에 대한 디바이스 설치 확인(인증)

디바이스 기본 사항 테스트

Visual Studio 사용하여 런타임에 드라이버를 테스트하는 방법

명령 프롬프트에서 런타임에 드라이버를 테스트하는 방법

디바이스 기본 사항 테스트 선택하고 구성하는 방법