DF — PNP Rebalance Request New Resources Device Test (Development and Integration)
Как и в случае с тестом удаления, тестовое приложение пытается добавить верхний фильтр в стек целевого устройства, а затем перезапустить стек устройств с помощью SetupDiCallClassInstaller с DIF_PROPERTYCHANGE. Если эта попытка не увенчалась успехом (т. е. если кто-то в стеке целевого устройства не выполнил запрос на удаление IRP), тест перезагружает компьютер для проверки повторной балансировки.
Этот тест инициирует повторную балансировку, а также управляет потребностью устройства в ресурсах, чтобы максимально увеличить вероятность того, что на самом деле новые ресурсы будут выделены устройству. Этот параметр также помогает устройству без ресурсов пройти полную процедуру повторной балансировки:
Сначала запускается простая повторная балансировка, что приводит к следующим irp:
IRP_MN_QUERY_STOP_DEVICE (предполагается, что этот IRP передается всеми драйверами. Тест уже охватывает случай, когда этот IRP завершается сбоем.)
IRP_MN_QUERY_RESOURCE_REQUIREMENTS
IRP_MN_FILTER_RESOURCE_REQUIREMENTS. В ответ на этот IRP драйвер фильтра принимает меры в зависимости от того, потребляет ли устройство какие-либо ресурсы:
- Если у устройства нет требований к ресурсам, фильтр назначает поддельный ресурс.
- Если у устройства есть требования к ресурсам, оно пытается перестроить список требований к ресурсам таким образом, чтобы максимально увеличить вероятность изменения текущего назначения. Например, если устройству требуется 2 байта памяти в диапазоне от 00 до FF и в настоящее время назначено значение 3A–3B, измените так, чтобы новое требование к ресурсам (в порядке предпочтения) выглядело как 00-39, 3C-FF или 3A-3B. Аналогичным образом, если в списке требований к ресурсам устройства есть альтернативные требования, он изменит их порядок, чтобы альтернативное требование было указано раньше в списке.
Теперь устройство всегда должно выполнять процедуру повторного балансировки.
IRP_MN_STOP_DEVICE
IRP_MN_START_DEVICE (новые выделенные ресурсы. Если были созданы поддельные требования, маскировка новых ресурсов от фактических драйверов.)
- Тестовый двоичный файл: Devfund_PnPDTest.dll
- Метод теста: PNPTryStopDeviceRequestNewResourcesAndRestartDevice
Тест Отключить поддержку расширенного тестирования устройств (EDT) удаляет драйвер фильтра теста (msdmfilt.sys) в качестве верхнего фильтра на устройствах, указанных с помощью параметра DQ. Этот фильтр теста устанавливается в рамках выполнения тестов в этой категории тестов.
- Тестовый двоичный файл: Devfund_PnPDTest.dll
- Метод теста: DisableEnhancedDeviceTestingSupport
Сведения о тесте
Характеристики |
|
Платформы |
|
Поддерживаемые выпуски |
|
Ожидаемое время выполнения (в минутах) | 3 |
Категория | Сценарий |
Время ожидания (в минутах) | 45 |
Требуется перезагрузка | false |
Требуется специальная конфигурация | Да |
Тип | automatic |
Дополнительная документация
Тесты в этой области функций могут содержать дополнительную документацию, включая предварительные требования, сведения о настройке и устранении неполадок, которые можно найти в следующих разделах:
Выполнение теста
Перед запуском теста завершите настройку теста, как описано в разделе Требования к тестированию : Предварительные требования к тестированию надежности Device.Fundamentals.
Устранение неполадок
Общие сведения об устранении неполадок при тестировании HLK см. в разделе Устранение неполадок при тестировании Windows HLK.
Сведения об устранении неполадок, относящихся к тестам Device Fundamentals в HLK и WDK, см. в дополнительной документации по Device.DevFund.
Дополнительные сведения
Параметры
Имя параметра | Описание параметра |
---|---|
DQ | Запрос SDEL WDTF, используемый для идентификации целевых устройств. https://go.microsoft.com/fwlink/?LinkId=232678 |
Wpa2PskAesSsid | Требуется только в том случае, если DUT или одно из его дочерних устройств является адаптером Wi-Fi. Укажите SSID сети WPA2 AES WiFi, которую тест может использовать для тестирования адаптера Wi-Fi. Значение по умолчанию — kitstestssid. |
Wpa2PskPassword | Требуется только в том случае, если DUT или одно из его дочерних устройств является адаптером Wi-Fi. Укажите пароль сети Wi-Fi WPA2 AES, указанной с помощью параметра Wpa2PskAesSsid. Значение по умолчанию — password. |
WDTFREMOTESYSTEM | Требуется только в том случае, если DUT или одно из его дочерних устройств является проводной сетевой картой без адреса шлюза IPv6. Если определено, что это требуется, укажите IPv6-адрес, по которому тестовый сетевой адаптер может проверить связь для тестирования сетевых операций ввода-вывода. Например: fe80::78b6:810:9c12:46cd |
DriverVerifierAdditionalDrivers | Дополнительные драйверы, для которых должно быть включено средство проверки драйверов |
DriverVerifierExcludedFlags | Заполнитель для флагов средства проверки драйверов, которые могут быть исключены вручную для тестового запуска |
MultiDeviceHardwareIdSdelQueryHardwareID | Несколько устройств SDEL |
MultiDeviceInstanceIdSdelWDKDeviceID | Идентификатор устройства DUT |
DriverVerifierCustomizeConfiguration | Указывает, что для этого теста может потребоваться автоматически обновить параметры средства проверки драйверов. |
TestCycles | Количество циклов, для которых выполняется тест. |
DoSimpleIO | Верно или неверно. Запускает SimpleIO (при обнаружении) на тестовых устройствах до и после выполнения операций PNP. |
IOPeriod | Период времени в минутах для запуска SimpleIO (если он найден). |
DoConcurrentIO | Верно или неверно. Использует параллельный интерфейс ввода-вывода WDTF для отправки запросов ввода-вывода в стеки целевых устройств при выполнении операций PNP. |