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.
Essa extensão fornece uma camada de compatibilidade com o VSTest permitindo estruturas de teste que já estão implementadas com o VSTest para:
- Execute facilmente com Microsoft.Testing.Platform sem uma reescrita importante.
- Dê suporte ao VSTest e ao Microsoft.Testing.Platform com a mesma implementação da estrutura de teste.
Essa extensão é enviada como parte do pacote NuGet Microsoft.Testing.Extensions.VSTestBridge .
Compatibilidade com o VSTest
A principal finalidade dessa extensão é oferecer uma experiência de atualização fácil e suave para os usuários do VSTest, permitindo um modo duplo em que a nova plataforma está habilitada e, em paralelo, um modo de compatibilidade é oferecido para permitir que os fluxos de trabalho usuais continuem funcionando.
Suporte a Runsettings
Essa extensão permite que você forneça um arquivo VSTest .runsettings, mas nem todas as opções nesse arquivo são selecionadas pela plataforma. Descrevemos abaixo as configurações compatíveis e sem suporte, opções de configuração e alternativas para as opções de configuração do VSTest mais usadas.
Quando habilitado pela estrutura de teste, você pode usar --settings <SETTINGS_FILE> para fornecer o arquivo .runsettings.
Elemento RunConfiguration
Os seguintes elementos de RunConfiguration não são suportados por Microsoft.Testing.Platform:
| Node | Descrição | Razão/Solução alternativa |
|---|---|---|
| MaxCpuCount | Essa configuração controla o nível de paralelismo no nível do processo. Use 0 para habilitar o paralelismo máximo no nível do processo. | Quando Microsoft.Testing.Platform é usado com MSBuild, essa opção é transferida para MSBuild. Quando um único executável é executado, essa opção não tem significado para Microsoft.Testing.Platform. |
| ResultsDirectory | O diretório em que os resultados do teste são colocados. O caminho é relativo ao diretório que contém o arquivo .runsettings. | Use a opção de linha de comando --results-directory para determinar o diretório onde os resultados do teste serão colocados. Se o diretório especificado não existir, ele será criado. O padrão é TestResults no diretório que contém o aplicativo de teste. |
| TargetFrameworkVersion | Essa configuração define a versão da estrutura ou a família da estrutura a ser usada para executar testes. | Essa opção é ignorada. As propriedades <TargetFramework> ou <TargetFrameworks> do MSBuild determinam a estrutura de destino do aplicativo. Os testes são hospedados no aplicativo final. |
| TargetPlatform | Essa configuração define a arquitetura a ser usada para executar testes. |
<RuntimeIdentifier> determina a arquitetura do aplicativo final que hospeda os testes. |
| TratarErrosDoAdaptadorDeTesteComoAvisos | Suprime erros do adaptador de teste para que sejam convertidos em avisos. | Microsoft.Testing.Platform permite que apenas um tipo de teste seja executado a partir de um único assembly, e a falha no carregamento do framework de teste ou de outras partes da infraestrutura se tornará um erro impossível de ignorar, porque significa que alguns testes não puderam ser descobertos ou executados. |
| TestAdaptersPaths | Um ou mais caminhos para o diretório em que os TestAdapters estão localizados | Microsoft.Testing.Platform não usa o conceito de adaptadores de teste e não permite o carregamento dinâmico de extensões, a menos que façam parte do build e sejam registradas em Program.cs, automaticamente por meio de destinos de build ou manualmente. |
| TestCaseFilter | Um filtro para limitar os testes que serão executados. | A partir da v1.6, agora há suporte para essa entrada de runsettings. Antes dessa versão, você deveria usar a opção de linha de comando --filter. |
| TestSessionTimeout | Permite que os usuários finalizem uma sessão de teste quando ele exceder o tempo limite determinado. | Não há outra opção. |
| DotnetHostPath | Especifique um caminho personalizado para o host dotnet usado para executar o testhost. | Microsoft.Testing.Platform não está realizando nenhuma resolução adicional de dotnet. Depende totalmente de como o dotnet se comporta, que pode ser controlado por variáveis de ambiente, como DOTNET_HOST_PATH. |
| TreatNoTestsAsError | Saia com código de saída diferente de zero quando nenhum teste for descoberto. | Microsoft.Testing.Platform apresentará erro por padrão quando nenhum teste for descoberto ou executado em um aplicativo de teste. Você pode definir quantos testes você espera encontrar no assembly usando o parâmetro da linha de comando --minimum-expected-tests, que tem como padrão 1. |
Elemento DataCollectors
Microsoft.Testing.Platform não está usando coletores de dados. Em vez disso, adota o conceito de extensões em processo e extensões fora de processo. Cada extensão é configurada pelo respectivo arquivo de configuração ou através da linha de comando.
Mais importante ainda são as extensões hang e crash, e a extensão code coverage.
Elemento LoggerRunSettings
Os registradores no Microsoft.Testing.Platform são configurados por meio de parâmetros de linha de comando ou por configurações no código.
Suporte para filtro de VSTest
Essa extensão também oferece a capacidade de usar o mecanismo de filtragem VSTest para descobrir ou executar somente os testes que correspondem à expressão de filtro. Para obter mais informações, consulte a seção Detalhes da opção de filtro ou, para obter detalhes específicos da estrutura, consulte a página Executando testes de unidade seletivos.
Quando o framework de teste estiver habilitado, você pode usar --filter <FILTER_EXPRESSION>.
Parâmetros TestRun
Você pode passar parâmetros para a execução de teste usando a opção de linha de comando --test-parameter no formato key=value. Essa opção pode ser especificada várias vezes, uma para cada parâmetro a ser definido.
Esses parâmetros podem ser acessados pela estrutura de teste na execução do teste:
- para MSTest, use Properties
- para NUnit, use TestContext.TestParameters