DF — удаление теста устройства PNP (надежность)
В этом тесте используется драйвер фильтра EDT для отправки IRP_MN_QUERY_REMOVE_DEVICE и IRP_MN_REMOVE_DEVICE в стеки целевых устройств.
Тест пытается установить драйвер верхнего фильтра в стеке целевого устройства. Эта попытка приводит к запросу с удалением IRP.
Если этот запрос с удалением IRP завершается сбоем, тест перезагружает компьютер, чтобы получить драйвер фильтра в стеке устройств. Если запрос на удаление не наложен вето, стек устройств будет удален и перезапущен с драйвером фильтра в стеке устройств.
Тест с помощью API-интерфейсов установки вызывает отправку IRP с удалением запроса в стек устройств. Драйвер фильтра не выполняет этот запрос на удаление, поэтому отправляется IRP отмены и удаления. Драйвер фильтра будет утверждать, что отмена и удаление выполнена успешно.
Затем тестовое приложение вызывает соответствующий установщик класса и все зарегистрированные совместные установщики для отключения, включения и удаления или повторной регистрации устройства (при этом проверяется, как класс и совместно установщики обрабатывают DIF_PROPERTYCHANGE с помощью DICS_DISABLE, DICS_ENABLE и DICS_PROPCHANGE). При получении IRP_MN_REMOVE_DEVICE драйвер фильтра будет утверждать, что более низкие драйверы успешно выполнили его.
Каждый из этих шагов включает предварительный запрос на удаление. Если на этот запрос наложено вето, устройство не будет удалено. Вы можете при необходимости наложить вето на запрос на удаление, например во время потоковой передачи видео на USB-камеру или если целевое устройство находится в пути загрузки или разбиения по страницам. Помните, что просто завершать сбой всех запросов на удаление обычно не рекомендуется. Сбой всех запросов на удаление не гарантирует, что драйвер никогда не получит удаление, так как удаление IRP по-прежнему будет выдано после неожиданного удаления или если кто-либо в стеке устройств не сможет запустить IRP.
- Тестовый двоичный файл: Devfund_PnPDTest.dll
- Метод теста: PNPRemoveAndRestartDevice
Тест Отключить поддержку расширенного тестирования устройств (EDT) удаляет драйвер фильтра теста (msdmfilt.sys) в качестве верхнего фильтра на устройствах, указанных с помощью параметра DQ. Этот фильтр теста устанавливается в рамках выполнения тестов в этой категории тестов.
- Тестовый двоичный файл: Devfund_PnPDTest.dll
- Метод теста: DisableEnhancedDeviceTestingSupport
Сведения о тесте
Характеристики |
|
Платформы |
|
Поддерживаемые выпуски |
|
Ожидаемое время выполнения (в минутах) | 8 |
Категория | Сценарий |
Время ожидания (в минутах) | 210 |
Требуется перезагрузка | 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. |