Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O relator de teste de terminal é a implementação interna do relatório de status e progresso para o terminal (console). Faz parte do núcleo Microsoft. Testing.Platform (MTP) e não requer nenhum pacote NuGet adicional.
Modos de saída
Há dois modos de saída disponíveis:
Normal, a saída contém o banner, reporta falhas completas dos testes, mensagens de alerta e escreve o resumo da execução.
Detailed, igual aNormal, mas também relataPassedtestes.
ANSI
Internamente, há dois formatadores de saída diferentes que detectam automaticamente a funcionalidade do terminal para lidar com códigos de escape ANSI.
- O formatador ANSI é usado quando o terminal é capaz de renderizar os códigos de escape.
- O formatador não ANSI é usado quando o terminal não pode lidar com os códigos de escape, quando
--no-ansié usado ou quando a saída é redirecionada.
O padrão é detectar automaticamente as capacidades.
Progress
Um indicador de progresso é gravado no terminal. O indicador de progresso mostra o número de testes aprovados, testes reprovados e testes ignorados, seguido pelo nome da montagem testada, sua estrutura de destino e a arquitetura.
A barra de progresso é gravada com base no modo selecionado:
- ANSI, a barra de progresso é animada, aderindo à parte inferior da tela e é atualizada a cada 500ms. A barra de progresso é ocultada quando a execução do teste é feita.
- não ANSI, a barra de progresso é gravada na tela a cada 3 segundos. O progresso está visível no resultado.
Saída direta do console e redesenho do progresso
Para animar a barra de progresso, o renderizador de progresso ANSI assume o controle do cursor do terminal e redesenhe repetidamente a parte inferior da tela. Qualquer texto escrito diretamente em stdout ou stderr fora do caminho de captura do framework de teste pode ser substituído ou removido durante esse redesenho. Por exemplo, uma chamada Console.WriteLine proveniente do código de ciclo de vida no nível de assembly ou de sessão (como um hook Before(Assembly) ou Before(TestSession)), ou de uma extensão, pode piscar brevemente e depois desaparecer quando a barra de progresso é atualizada.
Esse comportamento é distinto da saída padrão capturada por teste e do erro padrão. A saída que um teste gera enquanto é executado é capturada pelo framework e exibida de acordo com --show-stdout e --show-stderr, para que a barra de progresso não a sobrescreva.
Se o seu código precisar escrever diretamente no console e você precisar que essa saída permaneça visível, desative o progresso (--progress off no MTP 2.3.0+ ou --no-progress em versões anteriores). Como alternativa, desabilite ANSI (--ansi off no MTP 2.3.0+ ou --no-ansi em versões anteriores) para usar a saída de progresso não ANSI, que acrescenta novas linhas em vez de redesenhar no local e não substitui a saída direta anterior.
Opções
| Opção | Versão do MTP | DESCRIÇÃO |
|---|---|---|
--no-progress |
— | Desativa a exibição do progresso na tela. Descontinuado no MTP 2.3.0 em favor de --progress off. |
--progress |
2.3.0 | Controla se o progresso é mostrado. Os valores válidos são auto (padrão), on (também aceita true, enable, 1), e off (também aceita false, disable, 0). |
--no-ansi |
— | Desabilita a saída de caracteres de escape ANSI para a tela. |
--ansi |
2.3.0 | Controla se os caracteres de escape ANSI são emitidos. Os valores válidos são auto (padrão), on (também aceita true, enable, 1), e off (também aceita false, disable, 0). |
--output |
— | Especifica o nível de detalhamento da saída ao relatar testes. Os valores válidos são Normal e Detailed. O padrão é Normal. |
--show-stdout |
2.2.1 | Determina quando mostrar a saída padrão capturada de um teste. Os valores válidos são All, Failede None. O padrão é All. |
--show-stderr |
2.2.1 | Determina quando mostrar a saída de erro capturada de um teste. Os valores válidos são All, Failede None. O padrão é All. |
Note
Um traço (—) na coluna de versão MTP marca as opções principais que não estão vinculadas a uma versão específica porque elas estão disponíveis desde as versões iniciais da plataforma.
Note
A partir da versão 2.3.0 do MTP, quando o MTP detecta que está em execução em um ambiente de ferramenta de LLM ou de IA, ele suprime o banner de inicialização e altera o valor padrão de --show-stdout e --show-stderr de All para Failed para reduzir o ruído.