Поделиться через


Предоставленные подключаемые модули WDTF Simple I/O

Простые подключаемые модули ввода-вывода — это расширения для Платформы тестирования драйверов Windows (WDTF), реализующие универсальные функции ввода-вывода для конкретного устройства. Если подключаемый модуль существует для типа устройства, которое тестируется, базовые тесты устройств используют интерфейсы простого ввода-вывода WDTF для тестирования ввода-вывода.

В этом разделе перечислены типы устройств с простыми подключаемыми модулями ввода-вывода и указывающие, существуют ли определенные требования для тестирования устройства. Это те же требования, которые нужно соблюдать при использовании комплекта аппаратных лабораторий Windows (Windows HLK). В этой статье также представлены идеи по устранению неполадок и устранению ошибок тестирования.

Если тип вашего устройства не указан, вы можете его создать, см. Как настроить операции ввода-вывода для вашего устройства с помощью подключаемого модуля простых действий ввода-вывода WDTF.

Список базовых тестов устройств с определенными требованиями см. в разделе Базовые тесты устройств с определенными требованиями к конфигурации устройства

Аудио

Требования

  • Устройство должно иметь по крайней мере одну конечную точку воспроизведения, подключенную к динамикам, наушникам или аналогичным устройствам.

  • Если целевое звуковое устройство имеет возможность вывода видео и звука HDMI, для выполнения звуковых тестов устройство должно быть подключено к устройству с поддержкой звука HDMI, например монитору HDMI или приемнику A/V.

Тип подключаемого модуля ввода-вывода (аудио)

  • Воспроизводит синусовую мелодию в конечной точке типа отрисовки. Записывает звук в конечной точке типа записи.

Как классифицировать сбои в тестах

  • Изучите сбой 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

  • Никаких особых требований.

Тип подключаемого модуля ввода-вывода (Bluetooth)

  • Использует функцию BluetoothFindFirstDevice для поиска устройства Bluetooth.

CDROM

Требования CDROM

  • Назначается буква диска.
  • Носитель присутствует в устройстве.
  • Файлы присутствуют на вставленном носителе.

Тип подключаемого модуля ввода-вывода (CDROM)

  • Находит файлы на CD-ROM и выполняет операцию чтения, используя Win32 API ReadFile.

Как определить приоритет тестовых сбоев (CDROM)

  • На тестовом компьютере перейдите к диску CD/DVD и убедитесь, что вы можете получить доступ к содержимому дисков.
  • Подключаемый модуль CD-Rom простого ввода-вывода ищет файлы на CD/DVD для выполнения операций чтения. Убедитесь, что cd/DVD-диск содержит файлы, закодированные на диске.
  • Этот простой плагин ввода-вывода использует функции Win32 CreateFile, WriteFile, ReadFile. Ошибки, которые возвращаются, скорее всего, являются кодами ошибок Win32 из этих API.

Диск

Требования к диску

  • У диска есть по крайней мере один связанный том, которому назначена буква диска.

Тип подключаемого модуля ввода-вывода (диск)

  • Использует подключаемый модуль простого ввода-вывода для томов.

Дисплей

Требования к отображению

  • Никаких особых требований к тестированию.

Тип плагина ввода-вывода, выполняемый (Отображение)

  • Использует API D3DX для использования графических адаптеров.

Как отсортировать сбои в тестах (отображение)

  • Просмотрите журналы тестирования, которые сообщают о сбоях из используемых API.

УСТРОЙСТВА GPS (и GPS-устройства в системах)

Требования (GPS)

  • Устройство должно быть проверено в расположении с соответствующими сигналами GPS.

Тип подключаемого модуля ввода-вывода для работы с GPS

  • Использует плагин ввода-вывода для датчиков.

Локальная вычислительная сеть

Требования (локальная сеть)

  • Устройство имеет IPv6-адрес.

  • Устройство имеет адрес сетевого шлюза IPv6 (в противном случае параметр WDTFREMOTESYSTEM должен передаваться тесту с IPv6-адресом, который тестовый сетевой адаптер может выполнить ping).

  • Состояние сетевой операции устройства — IfOperStatusUp.

  • Сетевое устройство не является WWAN или устройством WLAN.

Тип функции подключаемого модуля ввода-вывода (LAN)

  • Адрес сетевого шлюза Pings IPv6.

Как проводить сортировку сбоев тестов (LAN)

  • Убедитесь, что существует существующий IP-адрес.
  • Убедитесь, что есть IP-адрес шлюза IPv6.
  • Подтвердите IP-адрес шлюза вручную (используйте ping.exe).

Мобильное широкополосное подключение

Требования (мобильный широкополосный доступ)

  • Никаких особых требований к тестированию.

Тип подключаемого модуля ввода-вывода, который выполняет функции мобильного широкополосного подключения.

Как отсеивать сбои тестирования (мобильная широкополосная связь)

  • MobileBroadbandPlugin имеет ограниченные области, в которых возможны сбои.

    • "MobileBroadbandPlugin: попытка получения всех интерфейсов мобильной широкополосной связи завершилась неудачей."
    • Плагин MobileBroadband: не удалось получить интерфейс.
    • MobileBroadbandPlugin: идентификатор устройства получен.
    • MobileBroadbandPlugin: запрос возможностей интерфейса завершился сбоем
    • "MobileBroadbandPlugin: не удалось получить состояние готовности."
  • Лучше всего начинать исследование сбоя с устройства и определить, не удалось ли ему указать готовность или возможности устройства. Чтобы продолжить отладку, необходимо собрать файл трассировки ОС.

    • Выполните команду: netsh trace start wwan_dbg
    • Воспроизвести проблему.
    • Выполните команду: netsh trace stop

Переносимые устройства

Требования (переносные устройства)

  • Устройство имеет компонент хранилища, в котором можно создавать папки и файлы.

Тип подключаемого модуля ввода-вывода (переносные устройства)

  • Считывает и записывает файл в компонент хранилища на устройстве WPD с помощью API WPD.

Средства чтения смарт-карт

Требования (средства чтения смарт-карт)

  • Устройство содержит вставленную тестовую карточку Athena T0.

Тип подключаемого модуля для работы с I/O (смарт-карт ридеры)

  • Считывает и записывает данные в карточку Athena T0, вставленную в средство чтения карт.

Датчики

Требования (датчики)

  • Устройство GPS должно быть проверено в расположении с соответствующими сигналами GPS.

Том

Требования (объём)

  • У тома назначена буква диска.
  • Объем тома имеет 5 МБ свободного места.
  • Том не защищён от записи.
  • Носитель присутствует в устройстве.

Тип подключаемого модуля ввода-вывода (громкость)

  • Создает каталог с именем WDTF_Volume_IO и создает файл с именем SimpleIO.tmp. Операции ввода-вывода выполняются путем вызова API ReadFile и WriteFile для этого файла.

Как оценивать неудачи тестирования (выпуск)

  • На тестовом компьютере перейдите к диску и убедитесь, что вы можете получить доступ к содержимому диска.
  • Попытайтесь сохранить файл на диске. Убедитесь, что вы можете сохранить и получить доступ к нему легко.
  • Этот простой плагин ввода-вывода использует функции Win32 CreateFile, WriteFile, ReadFile. Ошибки, которые возвращаются, скорее всего, являются кодами ошибок Win32 из этих API.

Веб-камера

Требования (веб-камера)

  • Никаких особых требований к тестированию.

    Заметка

    Подключаемый модуль простого ввода-вывода для устройств веб-камеры имеет зависимость от файла MFPlat.dll, который недоступен в версиях Windows, которые не включают проигрыватель мультимедиа и связанные технологии, например Windows 7 N или Windows 7 KN. В этой версии Windows необходимо установить пакет дополнительных компонентов мультимедиа. Пакет дополнительных компонентов мультимедиа доступен для скачивания. Для получения дополнительной информации см. статью базы знаний 968211.

Тип подключаемого модуля ввода-вывода (веб-камера)

  • Использует интерфейсы Media Foundation для записи видео.

WLAN

Требования (WLAN)

Тип подключаемого модуля ввода-вывода (WLAN)

Как управлять отказами тестов (WLAN)

USB-контроллер и концентратор с Mutt

Требования (USB)

  • Никаких особых требований к тестированию.

    Устройство имеет символьную ссылку.

Тип подключаемого модуля ввода-вывода (USB)

  • Тесты передачи данных с использованием устройства Microsoft USB Test Tool (MUTT). Типы передачи включают контрольные, массовые, изохронные, прерывающие и потоки (только если SuperMUTT подключен к контроллеру USB 3.0)

Как проводить отбор сбоев тестирования (USB)

Базовые тесты устройства с определенными требованиями к конфигурации устройства

Прежде чем запускать следующие базовые тесты устройств , устройства на тестовом компьютере должны быть настроены в соответствии с требованиями, описанными в данной теме для конкретных типов устройств.

  • Тест неожиданного удаления корневого порта PCI (только устройства PCI)
  • Тестер маршрутизации устройства (сертификация)
  • Спящий режим и PNP (отключение и включение) с помощью операций ввода-вывода до и после (сертификация)
  • Тест драйвера Plug and Play (сертификация)
  • Одновременный тест оборудования и операционной системы (CHAOS) (сертификация)
  • Переустановка с использованием ввода-вывода до и после (сертификация)
  • Проверка установки устройства на согласованность файловой системы (сертификация)
  • Проверка установки устройства на стабильность других устройств (сертификация)

Тесты Основ Функционирования Устройств

Как протестировать драйвер во время выполнения с помощью Visual Studio

Как протестировать драйвер во время выполнения из командной строки

Как выбрать и настроить тесты основной функциональности устройства