Compartilhar via


opções da linha de comando de MSTest.exe

 

Publicado: abril de 2016

O MSTest.exe é o comando de linha de comando usado para executar testes. Esse comando tem várias opções que podem ser usadas para personalizar a execução do seu teste. Você pode usar muitas dessas opções em conjunto com outra; na verdade, é necessário usar determinadas opções em conjunto com outras opções, conforme descrito nas seções a seguir. É possível especificar essas opções em qualquer ordem na linha de comando MSTest.exe.

MSTest.exe não interpreta as opções ou os valores especificados para eles em maiúsculas e minúsculas.

As tabelas a seguir listam todas as opções para MSTest.exe e breves descrições sobre elas. É possível ver um resumo semelhante digitando MSTest /h na linha de comando.

Opções gerais de linha de comando

/testcontainer:[ nome do arquivo ]

Carrega um arquivo que contém testes.

Exemplo: /testcontainer:tests.dll

Para obter mais informações, consulte /testcontainer.

/testmetadata:[ nome do arquivo ]

Carregue um arquivo com metadados de teste. Para obter mais informações, consulte \testmetadata.

/testlist:[ caminho da lista de teste ]

Especifique a lista de testes, como especificado no arquivo de metadados, a ser executada. Para obter mais informações, consulte /testlist.

/category:[ filtro de categoria de teste ]

Especifique e filtre que categorias de teste serão executadas. Para obter mais informações, consulte /categoria.

/test:[ nome do teste ]

Especifique o nome de um teste a ser executado. Para obter mais informações, consulte /test.

/noisolation

Execute testes no processo MSTest.exe. Essa opção aumenta a velocidade de execução de teste, mas aumenta o risco do processo do MSTest.exe.

/testsettings: [ nome do arquivo ]

Use o arquivo de configurações de teste especificado.

Exemplo: /testsettings:Local.Testsettings

Para obter mais informações, consulte \testsettings.

/runconfig:[ nome do arquivo ]

Use o arquivo de configuração de execução especificado.

Exemplo: /runconfig:localtestrun.Testrunconfig

Para obter mais informações, consulte /runconfig.

Dica

Esta opção de linha de comando é mantida para compatibilidade com versões anteriores do Visual Studio.Configurações de execução de teste foram substituídas pelas configurações de teste no Visual Studio Enterprise.

/resultsfile:[ nome do arquivo ]

Salve o resultados de ensaio para o arquivo especificado.

Exemplo: /resultsfile:testResults.trx

Para obter mais informações, consulte /resultsfile.

/detail:[ id de propriedade ]

Especifique o nome de uma propriedade para a qual você deseja mostrar valores, se houver, além do resultado do teste. Para obter mais informações, consulte /detalhe.

/help

Exibir a mensagem de uso do MSTest.exe (forma abreviada: /? ou /h).

/nologo

Não exiba nenhuma faixa de inicialização e mensagem de direitos autorais.

/usestderr

Use o erro padrão para informações de erro de saída.

Opções de linha de comando para publicar resultados de teste

Para obter mais informações sobre essas opções, consulte Opções da linha de comando para publicar resultados de teste.

/publish:[ nome do servidor ]

Publicar resultados no banco de dados para a coleção de projetos de equipe do servidor especificado.

/publishresultsfile:[ nome do arquivo ]

Especifique o nome do arquivo de resultados a ser publicado. Se nenhum nome de arquivo de resultado for especificado, use o arquivo gerado pela execução atual.

/publishbuild:[ Criar id ]

Publique resultados de teste usando essa identificação de compilação.

/teamproject:[ nome do projeto de equipe ]

Especifique o nome do projeto de equipe ao qual a compilação pertence.

/platform:[ plataforma ]

Especifique a plataforma de compilação em relação a quais resultados do teste deverão ser publicados.

/flavor:[ flavor ]

Especifique o tipo de compilação em relação a quais resultados do teste deverão ser publicados.

Usando opções de MSTest

As seções a seguir descrevem muitas das opções para MSTest.exe com mais detalhes. As opções usadas para publicação de resultados de teste não estão incluídas aqui. Para obter informações sobre essas opções, consulte Opções da linha de comando para publicar resultados de teste.

/testcontainer

/testcontainer:[ nome do arquivo ]

O contêiner de teste é um arquivo que contém os testes que você deseja executar. Por exemplo, para testes ordenados, o recipiente de teste é o arquivo .orderedtest que define o teste ordenado. Para testes de unidade, é o conjunto compilado do projeto de teste que contém os arquivos de origem dos testes de unidade.

Dica

Para testes de unidade, este é o assembly que contém o código de teste, não o assembly que contém o código do aplicativo que você está testando.Por exemplo, se sua solução contém um projeto chamado BankAccount e um projeto de teste correspondente denominado BankAccountTest, especifique /testcontainer:BankAccountTest.dll.

Dica

Como o arquivo de teste de metadados também lista os testes que você pode executar, você não deve especificar opções de /testcontainer e de /testmetadata em uma única linha de comando.Isso seria ambíguo e geraria um erro.

/testmetadata

/testmetadata:[ nome do arquivo ]

Você pode usar a opção /testmetadata para executar testes em vários contêineres de teste.

O arquivo de metadados de teste é criado para sua solução quando você cria listas de testes usando a janela Editor de Lista de Testes. Este arquivo contém informações sobre todos os testes listados na janela Editor de lista de teste. Esses são todos os testes que existem em todos os projetos de teste em sua solução.

O arquivo de metadados de teste é um arquivo XML criado na pasta da solução. Este arquivo é mostrado no Gerenciador de Soluções abaixo do nó Itens de Solução. Um arquivo de metadados de teste tem a extensão .vsmdi, e está associado com a janela Editor de lista de teste. Ou seja, se você clicar duas vezes em um arquivo .vsmdi no Windows Explorer (ou no Explorador de Arquivos), o arquivo abrirá o Visual Studio e seu conteúdo. Todos os testes em projetos de teste de uma solução são exibidos na janela editor de lista de teste.

Você pode alterar o arquivo de metadados de teste somente fazendo alterações que são refletidas na janela do Editor de lista de teste, como criar ou excluir testes ou alterar propriedades de um teste.

Dica

Como o recipiente de teste contém os testes que você pode executar, você não deve especificar opções de /testcontainer e de /testmetadata em uma única linha de comando.Isso seria ambíguo e geraria um erro.

Quando você usa o /testmetadata opção, é recomendável que você indique testes específicos para executar usando o /test opção ou as /testlist opção ou ambos.

/testlist

/testlist:[ caminho da lista de teste ]

A opção /testlist é uma lista de testes, como especificado no arquivo de metadados de teste, a ser executada. Para executar testes que estão contidos em várias listas de teste, use a opção /testlist várias vezes. Quaisquer testes ordenados na lista de teste serão executados.

Dica

Você pode usar a opção /testlist somente junto com a opção /testmetadata.

Você pode usar a opção /testlist e a opção /test juntas. Isso é equivalente a selecionar uma lista de testes e um ou mais testes individuais na janela Editor de lista de teste e, então, escolher Executar Testes.

/categoria

/category:[ filtro de categoria de teste ]

Use o /category opção para especificar quais categorias de teste para executar.

Dica

Você deve usar a opção /testcontainer para usar a opção /category.

Você pode usar a opção /category somente uma vez por linha de comando, mas é possível especificar várias categorias de teste com o filtro de categoria de teste. O filtro de categoria de teste consiste em um ou vários nomes de categoria de teste separados pelos operadores lógicos '&', '|', '!', '&!'. Os operadores lógicos '&' e '|' não podem ser usado juntos para criar um filtro de categoria de teste.

Por exemplo:

  • /category:group1 realiza testes na categoria “group1” de teste.

  • /category:"group1&group2" executa testes que estão em categorias de teste "group1" e "group2". Os testes que estão apenas em uma das categorias de teste especificado não serão executados.

  • /category:"group1|group2" executa testes que estão na categoria “group1” ou “group2" de teste. Os testes que estão em ambas as categorias de teste serão executados também.

  • /category:"group1&!group2" executa testes da categoria de teste "group1" que não estão na categoria de teste "group2". Um teste que está na categoria "group1" e "group2" não será executado.

    Dica

    Se seu filtro consistir em uma única categoria como /category:group1, você não precisará incluir o filtro entre aspas.No entanto, se seu filtro fizer referência a mais de uma categoria como /category:"group1&group2", o filtro precisará ser colocado entre aspas.

/teste

/test:[ nome do teste ]

Use a opção de /test para especificar testes individuais a serem executados. Para executar testes múltiplos, use a opção /test diversas vezes.

Dica

Você pode usar o /test opção com um a /testcontainer opção ou com o /testmetadata opção, mas não com ambos.

Você pode usar a opção /testlist e a opção /test juntas. Isso é equivalente a selecionar uma lista de testes e um ou mais testes individuais na janela Editor de lista de teste e, então, escolher Executar Testes.

A cadeia de caracteres especificada por você com a opção /test é usada para fazer a correspondência dos nomes de testes em um contêiner de teste ou em um arquivo de metadados de teste. Isso significa que você pode especificar vários testes usando um único valor para /test. Por exemplo, especificar /test:ittest geraria correspondências para os testes nomeados DebitTest e CreditTest porque os dois nomes de teste contém a subcadeia de caracteres "ittest".

Dica

O valor especificado com o /test opção é testada com base não apenas o nome do teste, mas também o caminho desse teste, como visto no Gerenciador de soluções, ou, com testes de unidade, seu nome totalmente qualificado.

A seguir dois exemplos de uso:

Exemplo de teste de unidade: o arquivo UnitTest1.cs no projeto TestProject2 contém um teste de unidade chamado TestMethod1. A especificação de um valor 'ittest' para a opção /test também corresponderia a este teste, uma vez que a cadeia de caracteres é testada em relação ao nome totalmente qualificado "TestProject2.UnitTest1.TestMethod1" e a cadeia de caracteres 'ittest' também aparece em 'UnitTest1'.

Exemplo de teste genérico: A seguinte linha de comando executa o teste genérico especificado e, nos resultados do teste, exibe o caminho completo do teste.

mstest /testcontainer:"C:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\TestProject2\TestProject2\generictest1.generic" /test:testproject32\generic

/noisolation

/noisolation

Use esta opção para executar testes dentro do processo de MSTest.exe. Usar esta opção não causa outras alterações na configuração da execução de teste. A finalidade dessa opção é aprimorar a velocidade da execução de teste. No entanto, aumenta o risco para o ensaio como um todo porque uma exceção não tratada lançada pelo código de teste faria o processo do MSTest.exe falhar.

/testsettings

/testsettings:[ nome do arquivo ]

Use esta opção especificar um arquivo de configuração de teste. Por exemplo: /testsettings:local.Testsettings

É possível especificar um arquivo de configurações de teste de outras maneiras, como com a opção /testmetadata. As regras que regem a especificação de arquivos de configurações de teste são descritas aqui.

  • Se você usar o /testsettings opção, o arquivo especificado por ela será usado, se você usar também o /testmetadata opção.

  • Se você usar o /testmetadata opção para apontar para um arquivo de metadados que especifica o arquivo de configurações de teste ativas que o arquivo de configurações de teste será usada se você não usar o /testsettings opção.

  • Se você não usar a opção de /testsettings e também não especificar um arquivo de configurações de teste no arquivo de metadados de teste, o ensaio usará o arquivo de configurações padrão de teste.

    Dica

    Para obter mais informações sobre arquivos de configurações de teste, consulte Criar configurações de teste para testes de sistema automatizados usando o Microsoft Test Manager.

/runconfig

/runconfig:[ nome do arquivo ]

Observação   Esta opção de linha de comando é mantida para compatibilidade com versões anteriores do Visual Studio. As configurações de execução de testes foram colocadas por configurações de teste no Visual Studio Premium.

Use esta opção especificar um arquivo de configuração de execução. Por exemplo: /runconfig:localtestrun.Testrunconfig

É possível especificar um arquivo de configuração de execução de outras maneiras, como com a opção /testmetadata. As regras que regem a especificação de arquivos de configuração de execução são descritas aqui.

  • Se você usar o /runconfig opção, o arquivo especificado por ela será usado, quer você use ou não o /testmetadata opção.

  • Se você usar o /testmetadata opção para apontar para um arquivo de metadados que especifica o arquivo de configuração de execução ativa, que executam o arquivo de configuração será usada se você não usar o /runconfig opção.

  • Se você não usar o /runconfig opção e também não especificar um arquivo de configuração de execução no arquivo de metadados de teste, a execução do teste usará o arquivo de configuração de execução padrão.

/resultsfile

/resultsfile:[ nome do arquivo ]

Use esta opção salvar os resultados de ensaio para o arquivo chamado. Por exemplo: /resultsfile:testResults.trx.

/usestderr

/usestderr

Usar esta opção fará com que as seguintes informações sejam gravadas no erro padrão:

  • Os testes com resultado com Falha, Anulado, Erro, Expirou, Não Executável ou Não Executado.

  • Erros de nível de execução.

  • Erros ao analisar os argumentos de linha de comando.

  • Execute o resumo quando a execução de teste tiver um resultado de falha.

Sem esta opção, toda a saía é enviada para a saída padrão.

/detalhe

/detail:[ id de propriedade ]

Essa opção é usada exibir propriedades adicionais de caso de teste, se existirem. É possível passar mais de uma instância da opção /detail, cada uma com apenas uma ID de propriedade, em uma única linha de comando. As identificações válidas de propriedade para a opção /detail são:

adaptador

id

projectrelativepath

nomedocomputador

isautomated

readonly

debugtrace

link

spoolmessage

descrição

longtext

stderr

displaytext

name

stdout

duração

outcometext

storage

errormessage

proprietário

testcategoryid

errorstacktrace

parentexecid

testname

executionid

priority

testtype

grupos

projectname

traceinfo

Dica

A seleção real de IDs de propriedades que você pode usar com a opção /detail varia de acordo com o tipo de teste.Portanto, essa lista é somente uma aproximação.Em particular, se você estiver usando tipos personalizados de teste, a seleção de propriedades será diferente.Para saber quais propertyIDs você pode usar, examine o arquivo de resultados do teste gerado pela execução de teste.Para obter mais informações sobre teste arquivos de resultados, consulte Como salvar e abrir resultados de teste de carga e desempenho na Web no Visual Studio.

Se uma propriedade existir para o caso de teste especificado, suas informações estão incluídas no resumo do resultado de saída.

Por exemplo a linha de comando:

mstest /testcontainer:Errors.dll /detail:testtype

produz a saída a seguir, que contém informações de tipo de teste:

              ...
Results                    Top Level Tests
--------                   -----------------
Inconclusive               TestProject2.BankAccountTest.CreditTest
[testtype] = Unit Test
...

Consulte também

Reviewing Test Results in Microsoft Test Manager
Executando testes automatizados a partir da linha de comando