Habilitando a injeção de falha
A ferramenta WdfTester fornece uma interface WMI para configurar a injeção de falha de DDI para um driver específico. Um script (WdftesterScript.wsf) é fornecido que usa essa interface WMI para configurar a injeção de falha. Você pode escrever seu próprio script ou usar o script fornecido para habilitar a injeção de falha. Você pode executar um script (WdftesterScript.wsf) em uma janela do Prompt de Comando para registrar, configurar e cancelar o registro de um driver. O script também tem uma opção de linha de comando chamada runtest.
O que a opção runtest faz
A opção runtest executa desabilitação simples e habilita operações em um driver. Essa opção demonstra como usar a ferramenta. No início, o script desabilita o driver especificado e o habilita. Isso permite que o WdfTester monitore todas as chamadas DDI feitas durante as operações de desabilitar e habilitar. O script usa uma das interfaces WMI para obter a lista de DDIs que foram chamados durante esse período. O script determina qual desses DDIs pode falhar (somente aqueles que retornam NTSTATUS). Em seguida, o script chama outra interface WMI para configurar o WdfTester para falhar na primeira DDI da lista. O script desabilita e habilita o driver, o que faz com que a DDI falhe e dispare um evento WMI. O script já está aguardando o evento de falha do WMI para a DDI. Se o evento for recebido com êxito e a falha não tiver feito com que o computador ficasse sem resposta ou causasse um bug marcar (conforme determinado pelo desenvolvedor ou pelo testador do driver), o teste será considerado bem-sucedido. Em seguida, o script repete essas etapas para a próxima DDI na lista.
Nota A opção runtest exige que você copie a ferramenta DevCon (Devcon.exe) e a coloque no mesmo diretório que outros arquivos Wdftester. O aplicativo Devcon.exe está localizado no diretório %WDKRoot%\tools\<platform> .
A opção runtest:
Registra seu driver com WdfTester. Se você não instalou o driver, deverá instalá-lo antes de usar runtest.
Habilita o Verificador de Driver para esse driver (computadores que executam o Windows Vista ou posterior não exigem uma reinicialização).
Desabilita o driver usando o aplicativo Devcon.
Habilita o driver usando o aplicativo Devcon.
Recupera os nomes das funções que foram chamadas durante as operações habilitar e desabilitar e identifica as funções que retornam NTSTATUS e que podem falhar.
Inicia a notificação de evento WMI assíncrono.
Para cada DDI que pode falhar na lista obtida na etapa 5:
- Configura a função para falha.
- Desabilita e habilita o driver usando Devcon.exe. Essa operação chama a função e wdfTester falha na chamada de função.
- Aguarda o evento WMI ser acionado.
- Se o evento WMI for acionado, a opção runtest repetirá a etapa 7 para a próxima função na lista.
Cancela o registro do driver.