tcm: executando testes a partir de um plano de teste usando o utilitário de linha de comando
Publicado: abril de 2016
É possível executar testes automatizados que fazem parte de um plano de teste da linha de comando. Isso permite que você inicie a execução de um teste usando um arquivo em lotes de modo que possa agendar uma execução. Você também pode gerenciar os gerenciamentos de teste da linha de comando. Se você desejar exportar um ensaio de modo que um desenvolvedor possa exibir os resultados do teste usando o Visual Studio, você pode usar o tcm para fazer isso. Você também pode publicar resultados de testes de um Visual Studioarquivo de execução de teste (.trx) que usa tcm. É possível especificar os resultados desse arquivo de execução de teste que você deseja publicar novamente no plano de teste. Você pode usar seguinte tcm comando para realizar as seguintes tarefas:
tcm run /create
tcm run /list
tcm run /execute
tcm run /abort
tcm run /delete
tcm run /export
tcm run /publish
TCM.exe está localizado em <Drive:>\Program Files\Microsoft Visual Studio <version>\Common7\IDE em qualquer computador que tenha o Visual Studio Enterprise ou o Visual Studio Test Professional.
Para obter mais informações sobre como importar testes automatizados em seu projeto de teste e configurar seu plano de teste para executar esses testes, consulte criar casos de teste de um conjunto de testes automatizados e Executar testes automatizados da linha de comando usando o tcm.
Sintaxe
tcm run /create /title:title /planid: id /collection:CollectionURL /teamproject:project (suiteid:id /configid:configid | /querytext: query) [/settingsname:name] [/owner:owner] [/builddir:directory] [/testenvironment:name] [/login:username,[password]] [/include]
tcm run /execute /id:id /collection:CollectionURL /teamproject:project [/login:username,[password]]
tcm run /list [/planid:id | /querytext: query] /collection:CollectionURL /teamproject:project [/login:username,[password]]
tcm run /abort /id:id /collection:CollectionURL /teamproject:project [/login:username,[password]]
tcm run /delete /id:id /collection:CollectionURL /teamproject:project [/login:username,[password]] [/noprompt]
tcm run /export /id:id /resultsfile:path /collection:CollectionURL /teamproject:project [/login:username,[password]] [/attachment:attachmentname]
tcm run /publish /suiteid:id /configid:id /resultowner:owner /resultsfile:path /collection:CollectionURL /teamproject:project [/title: runtitle] [/runowner:owner] [/build:buildnumber /builddefinition:builddefinition] [/flavor:flavor [/platform:platform] [/assignfailurestouser:user] [/login:username,[password]] [/buildverification]
Parâmetros
Parâmetro |
Descrição |
---|---|
/collection:CollectionURL |
Especifica o URI da coleção de projeto de equipe. O formato para a URI é a seguinte: http://ServerName:Port/VirtualDirectoryName/CollectionName Se nenhum diretório virtual for usado, então o formato do URI será o seguinte: http://ServerName:Port/CollectionName |
/teamproject:project |
O nome do projeto da equipe que contém o plano de teste que você deseja importar testes automatizados. |
/title: title |
Especifica o título que você deseja usar para a execução criada ou caso você publique um arquivo de execução de teste. |
/planid:id |
Especifica o plano que contém os testes que você deseja executar ou o plano que está associado às execuções de teste que você deseja listar. |
/suiteid:id |
Especifica os conjuntos de testes que você deseja executar. Também pode especificar o pacote de teste a ser usado quando você publicar um ensaio. Dica Para localizar a identificação do pacote, você pode listar os pacotes de teste de um plano de teste.Para obter mais informações, consulte tcm: listando planos de teste, conjuntos de testes, configurações de teste e ambientes. Dica Para executar mais de um conjunto de testes, você pode usar o parâmetro /querytext. |
/configid:configid |
Especifica que configuração de teste você deseja executar para seus pacotes de teste. Também pode especificar a configuração de teste a ser usada quando você publicar um ensaio. Dica Para executar mais de uma configuração de teste, você pode usar o parâmetro /querytext. |
/querytext:query |
Especifica a consulta a ser usada para retornar as execuções de teste ou a consulta a ser usada para selecionar os testes que você deseja executar. Dica Você pode usar o parâmetro /querytest para executar mais de um conjunto de testes.Por exemplo: querytext:“SELECT * FROM TestPoint WHERE (ConfigurationId=20 OR ConfigurationId=21) AND (Suiteid=1185 OR Suiteid=1186)” |
/settingsname:name |
Opcional. Especifica as configurações de teste que você deseja usar para esta execução de teste. Se você não selecionar configurações de teste com esse parâmetro, as configurações de teste padrão para testes automatizados no plano de teste serão usadas. |
/owner:owner |
Opcional. Especifica o proprietário da execução de teste. |
/runowner:owner |
Opcional. Especifica o proprietário da execução de teste. |
/builddir:directory |
Opcional. Especifica o diretório de compilação a ser usado para localizar os assemblies de teste para o teste automatizado. Se isso não for especificado, o local de compilação será usado com base na compilação atribuída no momento ao plano de teste. |
/testenvironment:name |
Opcional. Especifica o ambiente de teste que você deseja usar para esta execução de teste. Se você não selecionar um ambiente de teste com esse parâmetro, o ambiente de teste padrão para testes automatizados no plano de teste será usado. |
/id:id |
Especifica a identificação de execução que você deseja excluir, anular ou exportar. |
/resultsfile:path |
Especifica o local a ser usado para exportar uma execução de teste ou para localizar a execução de teste para publicá-lo. Por exemplo, "c:\temp\ResultsForDeveloper.trx". |
/attachment:attachmentname |
Especifica o nome do anexo para uma execução de teste exportada por você. |
/resultowner:owner |
Especifica o proprietário para os resultados do teste. |
/build:buildnumber |
Opcional. Especifica o número da compilação a ser usado para publicar uma execução de teste. Este parâmetro deve ser usado com /builddefinition. |
/builddefinition:builddefinition |
Opcional. Especifica a definição de compilação a ser usada para publicar uma execução de teste. Este parâmetro deve ser usado com /build. |
/flavor:flavor |
Opcional. Especifica o tipo de compilação. Por exemplo, versão. Este parâmetro pode ser usado somente se o parâmetro /build for usado. |
/platform:platform |
Opcional. Especifica a plataforma de compilação. Por exemplo, x86. Este parâmetro pode ser usado somente se o parâmetro /build for usado. |
/assignfailurestouser:user |
Opcional. Especifica para quem atribuir qualquer teste com falha na execução de teste. |
/buildverification |
Opcional. Especifica que este teste contém testes de verificação de compilação que verificam a funcionalidade básica da compilação. |
/include |
Opcional. Especifica que todos os testes selecionados para a execução de teste estão incluídos, mesmo que os testes não estejam atualmente definidos com o estado Ativo. |
/noprompt |
Opcional. Especifica que não será solicitado que o usuário confirme a exclusão de uma execução de teste. |
/login:username,[password] |
Opcional. Especifica o nome e a senha de um usuário que está conectado ao servidor de camada de aplicativo para Team Foundation Server e que tenha permissões para executar o comando. Você usa esta opção se suas credenciais do Windows não possuem as permissões apropriadas, ou quando você estiver usando a autenticação básica, ou quando não estiver conectado em um domínio. Para fazer logon ao Visual Studio Online, você também precisará usar /allowalternatecredentials listados abaixo. |
/allowalternatecredentials |
Esse sinalizador deve ser especificado, além de /login parâmetro ao conectar-se ao Visual Studio Online. (Esse sinalizador só está disponível se você tiver o Visual Studio 2013 atualização 4 ou superior.) |
Você pode adicionar parâmetros para /collection e /teamproject ao arquivo XML de tcm.exe.config que está localizado no mesmo diretório que tcm.exe: <Drive:>\Program Files\Microsoft Visual Studio <version>\Common7\IDE. Se você adicionar estes ao arquivo, você não precisará inseri-los na linha de comando sempre executar um comando do tcm. Você pode adicionar essas teclas e seus valores para o arquivo, como segue, na seção de appSettings:
<appSettings>
<add key="TeamFoundationServer" value="http://<ServerName:Port/VirtualDirectoryName/CollectionName>"/>
<add key ="TeamProject" value="DinnerNow"/>
</appSettings>
Exemplos
Executando testes e gerenciando execuções de teste
Os exemplos a seguir pressupõem que você iniciou um prompt de comando do Visual Studio. (Vá para iniciar, todos os programas, Microsoft Visual Studio, ferramentas do Visual Studio, o Prompt de comando do desenvolvedor).
O prompt de comando abre na pasta: <drive>:\Program Files\Microsoft Visual Studio <version>\VC
Altere o diretório para a pasta que contém o assembly compilado do seu projeto de teste.
Importante
Para executar testes automatizados de linha de comando usando tcm.exe, você deve ter os casos de teste associados aos testes automatizados.Você também deve configurar seu plano de teste corretamente para usar uma compilação para localizar os testes automatizados que serão executados, se você não especificar as informações de compilação na linha de comando.Para obter mais informações sobre como fazer isso, consulte How to: Create Test Cases from an Assembly of Automated Tests Using tcm.exe.
Para obter as identificações necessárias para os seguintes comandos, poderá ser necessário usar tcm para listar os artefatos de teste e seus IDs. Para obter mais informações sobre como fazer isso, consulte tcm: listando planos de teste, conjuntos de testes, configurações de teste e ambientes e Executar testes automatizados da linha de comando usando o tcm.
O comando a seguir executa testes usando uma consulta de ponto de teste:
tcm run /create /title:"Nightly Run" /planid:1 /querytext:"SELECT * FROM TestPoint WHERE ConfigurationId=13" /settingsname:"<Name of your automated test settings>" /testenvironment:"<Name of a matching environment>" /collection:<CollectionURL> /teamproject:<Team Project name>
O comando a seguir realiza testes usando um pacote de testes e uma configuração específicos:
tcm run /create /title:"Nightly Run" /planid:1 /suiteid:5 /configid:13 /settingsname:"<Name of your automated test settings>" /testenvironment:"<Name of a matching environment>" /collection:<CollectionURL> /teamproject:<Team Project name>
O comando a seguir executa testes usando uma ID específica:
Tcm run /execute /id:1207 /collection:<CollectionURL> /teamproject:<Team Project name>
O comando a seguir lista as execuções de teste para um plano de teste específico:
tcm run /list /planid:1 /collection:<CollectionURL> /teamproject:<Team Project name>
O comando a seguir exclui uma execução de teste específica:
tcm run /delete /id:1009 /collection:<CollectionURL> /teamproject:<Team Project name>
O comando a seguir exporta uma execução de teste para um arquivo .trx:
tcm run /export /id:1273 /resultsfile:"c:\temp\latest.trx" /collection:<CollectionURL> /teamproject:<Team Project name>
O comando a seguir publica uma execução de teste para um pacote de teste e uma configuração de teste específicos e reatribui o proprietário. Isso atualiza os pontos de teste existentes para situações de teste no pacote de teste emparelhado com essa configuração para os resultados no arquivo .trx:
tcm run /publish /suiteid:5 /configid:13 /resultowner:"<Name of new owner>" /resultsfile:"c:\temp\latest.trx" /collection:<CollectionURL> /teamproject:<Team Project name>
Consulte também
tcm: listando planos de teste, conjuntos de testes, configurações de teste e ambientes
Usando o tcm para importar e executar testes automatizados para um plano de teste da linha de comando