dotnet vstest
Este artigo aplica-se a: ✔️ SDK .NET Core 3.1 e versões posteriores
Importante
O dotnet vstest
comando é substituído por dotnet test
, que agora pode ser utilizado para executar assemblagens. Veja o teste dotnet.
Name
dotnet vstest
- Executa testes a partir das assemblagens especificadas.
Sinopse
dotnet vstest [<TEST_FILE_NAMES>] [--Blame] [--Diag <PATH_TO_LOG_FILE>]
[--Framework <FRAMEWORK>] [--InIsolation] [-lt|--ListTests <FILE_NAME>]
[--logger <LOGGER_URI/FRIENDLY_NAME>] [--Parallel]
[--ParentProcessId <PROCESS_ID>] [--Platform] <PLATFORM_TYPE>
[--Port <PORT>] [--ResultsDirectory<PATH>] [--Settings <SETTINGS_FILE>]
[--TestAdapterPath <PATH>] [--TestCaseFilter <EXPRESSION>]
[--Tests <TEST_NAMES>] [[--] <args>...]]
dotnet vstest -?|--Help
Description
O dotnet vstest
comando executa a aplicação VSTest.Console
de linha de comandos para executar testes de unidades automatizados.
Argumentos
TEST_FILE_NAMES
Execute testes a partir das assemblagens especificadas. Separe vários nomes de assemblagem de teste com espaços. São suportados carateres universais.
Opções
--Blame
Executa os testes no modo de culpa. Esta opção é útil para isolar os testes problemáticos que causam a falha do anfitrião de teste. Cria um ficheiro de saída no diretório atual como Sequence.xml que captura a ordem de execução dos testes antes da falha.
--Diag <PATH_TO_LOG_FILE>
Ativa registos verbosos para a plataforma de teste. Os registos são escritos no ficheiro fornecido.
--Framework <FRAMEWORK>
Destino .NET Framework versão utilizada para a execução de testes. Exemplos de valores válidos são
.NETFramework,Version=v4.6
ou.NETCoreApp,Version=v1.0
. Outros valores suportados sãoFramework40
,Framework45
,FrameworkCore10
eFrameworkUap10
.--InIsolation
Executa os testes num processo isolado. Isto torna vstest.console.exe processo menos provável de ser interrompido num erro nos testes, mas os testes podem ser executados mais lentamente.
-lt|--ListTests <FILE_NAME>
Lista todos os testes detetados a partir do contentor de teste especificado.
--logger <LOGGER_URI/FRIENDLY_NAME>
Especifique um logger para os resultados do teste.
Para publicar resultados de teste no Team Foundation Server, utilize o fornecedor de
TfsPublisher
logger:/logger:TfsPublisher; Collection=<team project collection url>; BuildName=<build name>; TeamProject=<team project name> [;Platform=<Defaults to "Any CPU">] [;Flavor=<Defaults to "Debug">] [;RunTitle=<title>]
Para registar resultados num Ficheiro de Resultados de Teste do Visual Studio (TRX), utilize o fornecedor de
trx
logger. Este comutador cria um ficheiro no diretório de resultados de teste com o nome de ficheiro de registo especificado. SeLogFileName
não for fornecido, é criado um nome de ficheiro exclusivo para conter os resultados do teste./logger:trx [;LogFileName=<Defaults to unique file name>]
--Parallel
Execute testes em paralelo. Por predefinição, todos os núcleos disponíveis no computador estão disponíveis para utilização. Especifique um número explícito de núcleos ao definir a
MaxCpuCount
propriedade noRunConfiguration
nó no ficheiro runsettings .--ParentProcessId <PROCESS_ID>
ID do processo principal responsável por iniciar o processo atual.
--Platform <PLATFORM_TYPE>
Arquitetura de plataforma de destino utilizada para a execução de testes. Os valores válidos são
x86
,x64
eARM
.--Port <PORT>
Especifica a porta para a ligação do socket e a receção das mensagens de evento.
--ResultsDirectory:<PATH>
O diretório de resultados do teste será criado no caminho especificado, se não existir.
--Settings <SETTINGS_FILE>
Definições a utilizar ao executar testes.
--TestAdapterPath <PATH>
Utilize adaptadores de teste personalizados a partir de um determinado caminho (se existirem) na execução de teste.
--TestCaseFilter <EXPRESSION>
Execute testes que correspondam à expressão especificada.
<EXPRESSION>
é do formato<property>Operator<value>[|&<EXPRESSION>]
, em que Operador é um de=
,!=
ou~
. O operador~
tem semântica "contém" e é aplicável a propriedades de cadeia comoDisplayName
. Os parênteses()
são utilizados para agrupar subexpressões. Para obter mais informações, veja TestCase filter (Filtro TestCase).--Tests <TEST_NAMES>
Execute testes com nomes que correspondam aos valores fornecidos. Separe múltiplos valores com vírgulas.
-?|--Help
Imprime uma breve ajuda para o comando .
@<file>
Lê o ficheiro de resposta para obter mais opções.
args
Especifica argumentos adicionais para passar para o adaptador. Os argumentos são especificados como pares nome-valor do formulário
<n>=<v>
, em<n>
que é o nome do argumento e<v>
é o valor do argumento. Utilize um espaço para separar vários argumentos.
Exemplos
Execute testes no mytestproject.dll:
dotnet vstest mytestproject.dll
Execute testes no mytestproject.dll, exportando para uma pasta personalizada com o nome personalizado:
dotnet vstest mytestproject.dll --logger:"trx;LogFileName=custom_file_name.trx" --ResultsDirectory:custom/file/path
Execute testes no mytestproject.dll e nomyothertestproject.exe:
dotnet vstest mytestproject.dll myothertestproject.exe
Executar TestMethod1
testes:
dotnet vstest /Tests:TestMethod1
Executar TestMethod1
e TestMethod2
testar:
dotnet vstest /Tests:TestMethod1,TestMethod2