DF – PNP Remover Teste de Dispositivo (Desenvolvimento e Integração)
Esse teste usa o driver de filtro EDT para enviar faz com que IRP_MN_QUERY_REMOVE_DEVICE e IRP_MN_REMOVE_DEVICE sejam enviados para pilhas de dispositivos de destino.
O teste tenta instalar seu driver de filtro superior na pilha do dispositivo de destino. Essa tentativa resulta em um IRP de remoção de consulta.
Se esse IRP de remoção de consulta falhar, o teste reiniciará o computador para obter o driver de filtro na pilha do dispositivo. Se a solicitação de remoção não for vetada, a pilha do dispositivo será removida e reiniciada com o driver de filtro na pilha do dispositivo.
O teste, usando APIs de instalação, faz com que um IRP de remoção de consulta seja enviado para a pilha do dispositivo. O driver de filtro falha nessa solicitação de remoção, portanto, um IRP cancel-remove é enviado. O driver de filtro afirmará que a remoção de cancelamento foi bem-sucedida.
Em seguida, o aplicativo de teste chama o instalador de classe apropriado e quaisquer co-instaladores registrados para desabilitar ou habilitar e remover ou reenumerar o dispositivo (isso testa a classe e os co-instaladores que manipulam DIF_PROPERTYCHANGE com DICS_DISABLE, DICS_ENABLE e DICS_PROPCHANGE). Ao receber IRP_MN_REMOVE_DEVICE, o driver de filtro afirmará que os drivers inferiores o concluíram com êxito.
Cada uma dessas etapas envolve uma solicitação de remoção preliminar. Se essa solicitação for vetada, o dispositivo não será removido. Você pode optar por vetar uma solicitação de remoção quando apropriado, como ao transmitir vídeo em uma câmera USB ou se o dispositivo de destino estiver no caminho de inicialização ou paginação. Lembre-se de que simplesmente falhar todas as solicitações de remoção geralmente não é uma boa prática. Falhar em todas as solicitações de remoção não garantirá que o driver nunca receberá uma remoção porque um IRP de remoção ainda será emitido após uma remoção surpresa ou se alguém na pilha de dispositivos falhar em um IRP inicial.
- Binário de teste: Devfund_PnPDTest.dll
- Método de teste: PNPRemoveAndRestartDevice
O teste Desabilitar o teste de suporte do EDT (Teste avançado de dispositivo) desinstala o driver de filtro de teste (msdmfilt.sys) como um filtro superior em dispositivos especificados usando o parâmetro DQ. Esse filtro de teste é instalado como parte da execução de testes nesta categoria de teste
- Binário de teste: Devfund_PnPDTest.dll
- Método de teste: DisableEnhancedDeviceTestingSupport
Detalhes do teste
Especificações |
|
Plataformas |
|
Versões com suporte |
|
Tempo de execução esperado (em minutos) | 3 |
Categoria | Cenário |
Tempo limite (em minutos) | 45 |
Requer reinicialização | false |
Requer configuração especial | true |
Tipo | automático |
Documentação adicional
Os testes nessa área de recurso podem ter documentação adicional, incluindo pré-requisitos, configuração e informações de solução de problemas, que podem ser encontradas nos tópicos a seguir:
Executando o teste
Antes de executar o teste, conclua a configuração do teste conforme descrito nos requisitos de teste: Pré-requisitos do Teste de Confiabilidade device.fundamentals.
Solucionando problemas
Para solução de problemas genéricos de falhas de teste do HLK, consulte Solução de problemas de falhas de teste do Windows HLK.
Para obter informações de solução de problemas específicas para os testes de Conceitos básicos do dispositivo no HLK e no WDK, consulte Documentação adicional de Device.DevFund.
Mais informações
Parâmetros
Nome do parâmetro | Descrição do parâmetro |
---|---|
DQ | Uma consulta SDEL do WDTF usada para identificar os dispositivos de destino – https://go.microsoft.com/fwlink/?LinkId=232678 |
Wpa2PskAesSsid | Obrigatório SOMENTE se o DUT ou um de seus dispositivos filho for um adaptador WiFi. Forneça o SSID de uma rede WiFi AES WPA2 que o teste pode usar para testar o adaptador WiFi. O padrão é 'kitstestssid'. |
Wpa2PskPassword | Obrigatório SOMENTE se o DUT ou um de seus dispositivos filho for um adaptador WiFi. Forneça a senha da rede WiFi AES WPA2 especificada usando o parâmetro Wpa2PskAesSsid. O padrão é 'password'. |
WDTFREMOTESYSTEM | Necessário somente se o DUT ou um de seus dispositivos filho for uma NIC com fio que não tenha um endereço de gateway IPv6. Se determinado a ser necessário, forneça um endereço IPv6 que a NIC de teste pode executar ping para testar a E/S da rede. Por exemplo: fe80::78b6:810:9c12:46cd |
DriverVerifierAdditionalDrivers | Drivers adicionais que devem ter o Verificador de Driver habilitado |
DriverVerifierExcludedFlags | Espaço reservado para sinalizadores do Verificador de Driver que podem ser excluídos manualmente para a execução de teste |
MultiDeviceHardwareIdSdelQueryHardwareID | SDEL de vários dispositivos |
MultiDeviceInstanceIdSdelWDKDeviceID | ID do dispositivo do DUT |
DriverVerifierCustomizeConfiguration | Especifica que esse teste pode querer atualizar automaticamente as configurações do Verificador de Driver |
TestCycles | Número de ciclos para os qual executar o teste. |
DoSimpleIO | Verdadeiro ou falso. Executa o SimpleIO (se encontrado) em dispositivos de teste antes e depois de executar operações PNP. |
IOPeriod | Período de tempo em minutos para executar o SimpleIO (se encontrado). |
DoConcurrentIO | Verdadeiro ou falso. Usa a interface de E/S simultânea WDTF para enviar solicitações de E/S para pilhas de dispositivo de destino ao executar operações PNP. |