Teste de EHDD
Esse teste verifica se um disco rígido criptografado está em conformidade com as especificações da Microsoft e do Setor.
Detalhes do teste
Especificações |
|
Plataformas |
|
Versões com suporte |
|
Tempo de execução esperado (em minutos) | 30 |
Categoria | Compatibilidade |
Tempo limite (em minutos) | 1800 |
Requer reinicialização | false |
Requer configuração especial | false |
Tipo | automático |
Documentação adicional
Os testes nessa área de recursos podem ter documentação adicional, incluindo pré-requisitos, configuração e informações de solução de problemas, que podem ser encontrados nos tópicos a seguir:
Executando o teste
Antes de executar o teste, conclua a configuração de teste conforme descrito nos requisitos de teste: Pré-requisitos de teste de disco rígido.
O dispositivo EHDD deve ser anexado ao controlador apropriado. O trabalho preparará o disco com a partição e a formatação corretas para o teste. O teste é destrutivo e, portanto, o disco não pode ser o disco de inicialização. É importante minimizar a quantidade de atividade que ocorre na unidade fora do teste do logotipo. Como esse teste tem elementos de desempenho, a atividade externa pode afetar os resultados. O PSID para a unidade é necessário para ser inserido em runtime, pois esse valor não pode ser obtido programaticamente.
Solucionando problemas
Para solucionar problemas genéricos de falhas de teste do HLK, consulte Solução de problemas de falhas de teste do Windows HLK.
Verifique o rastreamento WTT:
Exibir o log de tarefas do teste Executar EHDD.
Abra o arquivo de log EHDDLogoTest.wtl.
Verifique se há mensagens que podem resolver o problema.
Verificar e reproduzir rastreamento de comando TCG:
Todos os comandos enviados ao driver são registrados em caso de erro. Quando um erro é encontrado, o rastreamento, desde o reverter anterior, é salvo com a extensão .error na pasta da qual o teste é executado.
Abra em um editor de texto o FullCommandoutput#.txt.error com o número mais alto.
Procure o motivo da falha.
O arquivo SerializedCommands#.error pode ser reproduzido para reproduzir o erro observado.
Determine se essa é uma reprodução consistente reproduzindo o arquivo de erro. EX: EhddLogoTest.exe /DeviceID "\\.\physicaldrive1" /PSID "G98D72LDPW2DF9HDN30HG0G30H409HG4" /Playback SerializedCommands1.error
Não foi possível iniciar o registro em log para EhstorTCGDrvTrace:
Se uma execução anterior do teste for interrompida prematuramente, é possível que o log de rastreamento persista além da vida útil do binário.
Você verá o seguinte erro:
Executando "cmd.exe /c logman.exe iniciar EhstorTcgDrvTrace -ets -p {aa3aa23b-bb6d-425a-b58c-1d7e37f5d02a} -ft 1 -rt -o perflog.etl"Execução de comando encerrada com código: -2144337737 Não foi possível iniciar o registro em log para EhstorTcgDrvTrace
Abra uma janela de cmd com privilégios elevados e clique com o botão direito do mouse em cmd.exe (C:\Windows\System32\cmd.exe) e escolha Executar como administrador.
Executar logman -query -ets
Executar logman -stop -ets EhstorTcgDrvTrace
Para obter informações de solução de problemas, consulte Solução de problemas de device.storage testing.
Mais informações
O trabalho usa a ID da instância do dispositivo em teste e a PSID do dispositivo. O trabalho converte a ID da instância do dispositivo em um número de unidade física para executar o teste nesse dispositivo. O trabalho particiona e formata a unidade para obtê-la na configuração necessária para teste. O EhddLogoTest será executado por meio de uma série de casos de teste mapeados para itens nos requisitos. Os casos de teste são independentes e os resultados de um caso de teste não devem afetar outros casos de teste, pois a unidade é revertida e ativada entre cada caso de teste. Veja a seguir uma lista de casos de testes:
Identificar o ATA
Banda
Tamanho do Pacote Com
Modo de Criptografia
Modo de ACL fixo
Fuzz
Comprimento da chave
Metadados
Nome Comum Modificável
Versão do Opal
Silo de consulta
Travessia de Intervalo
Proteção de Segredo
SID Desabilitar
Redefinição de pilha TCG
Redefinição de TPer
Apagamento não autenticado
Cada um desses casos de teste pode ser executado na linha de comando usando o teste no modo autônomo para mais testes ou depuração. O caso de teste do Fuzz tem um argumento opcional para o número de iterações fuzz ao executar o teste autônomo.
Durante o teste, os comandos que estão sendo enviados para a unidade são registrados e, se ocorrer um erro, esse log será salvo em texto sem formatação (FullCommandoutput#.txt.error) e em um arquivo de reprodução (SerializedCommands#.error). O log é redefinido sempre que um reverter ocorre como os comandos, já que o último reverter deve ser suficiente para reproduzir a falha. O teste pode ser iniciado com o argumento de reprodução para reproduzir a série de comandos que levam à falha.
Sintaxe de comando
Parâmetro | Descrição |
---|---|
EhddLogoTest |
O binário para o teste. |
/Deviceid |
A letra da unidade do dispositivo EHDD. Exemplo: /DeviceID \\\\.\\PhysicalDrive1 |
/PSID |
O PSID do dispositivo. Exemplo: /PSID VUTSRQPONMLKJIHGFEDCBA9876543210 |
/Semente |
Valor de semente para gerar dados de teste aleatórios. Exemplo: /Seed 1000 |
/RunTestCaseType |
Executa apenas a categoria especificada de casos de teste: dispositivo, perfil ou cenário. Exemplo: dispositivo /RunTestCaseTypes |
/RunTestCase |
Executa apenas o caso de teste especificado: ATAIdentify, Band, ComPacketSize, EncryptionMode, FixedACLMode, Fuzz, KeyLength, Metadata, ModifiableCommonName, OpalVersion, QuerySilo, RangeCrossing, SecretProtect, SIDDisable, TCGStackReset, TPerReset ou UnauthenticatedErase. Exemplo: /RunTestCase Band |
/FuzzIterations |
Número de iterações para executar o cenário de fuzz. Válido somente se estiver executando o cenário de fuzz. Exemplo: /FuzzIterations 1000 |
/SkipManualTestCases |
Ignorar casos de teste que precisam de interação manual. Exemplo: /SkipManualTestCases |
/Depurador |
Solicita a anexação do depurador que dá tempo para permitir que o depurador seja anexado antes de executar o programa. Exemplo: /Depurador |
/Verbosidade |
Detalhamento de log. Níveis de detalhamento de log: mínimo, padrão ou detalhado. Exemplo: /Verbosity Verbose |
/Reprodução |
Reproduza um arquivo de log de comandos gravado anteriormente. Exemplo: /Playback RecordedCommand.err |
/Log |
Nome do log Valor padrão: LogoTest.wtl Exemplo: /Log mytestlog.wtl |
/cmdPerfTraceAnalysis |
Executar a análise de desempenho do comando :Never, OnPassed ou Always. Exemplo: /cmdPerfTraceAnalysis Always |
/cmdPerfTraceLogFile |
Comando de log de rastreamento de saída de desempenhoText. Valor padrão: perf-tracelog.etl Exemplo: /cmdPerfTraceLogFile perf-tracelog.etl |
Uso de comando
Comando | Descrição |
---|---|
EhddLogoTest.exe /DeviceID "[DiskDeviceObjLink]" /PSID "[PSID]" |
Executa o teste para a ID da instância do dispositivo especificada e a PSID. |
Observação
Para obter ajuda de linha de comando para esse binário de teste, digite /?.
Lista de arquivos
Arquivo | Location |
---|---|
EhddFuzzer.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddInterop.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddLogoTest.exe |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddModularTestCase.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTestCases.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTestHarness.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTestLib.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTraceLib.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
Tcglibutil.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
StorageDevices.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
Parâmetros
Nome do parâmetro | Descrição do parâmetro |
---|---|
LLU_LclAdminUsr | Conta de usuário para executar o teste. |
LLU_NetAccessOnly | Conta de usuário para acessar o compartilhamento de arquivos de teste. |
WDKDeviceID | Caminho da instância do dispositivo a ser testado. |
DiskDeviceObjLink | Atribuído por Criar Parâmetros de Armazenamento. |
PSID | PSID do dispositivo |
Destrutivo | (0,1) 0=Passivo, 1=Destrutivo |