Compartilhar via


Executar testes no processo de compilação

É possível usar Team Foundation Build para executar testes automatizados e analisar o impacto das alterações de código nos testes como parte do processo de compilação. Por exemplo, é possível definir um processo de compilação para atender à execução BVT (teste de verificação pós-compilação) programada regularmente da equipe. Também é possível executar testes automatizados e realizar tarefas relacionadas ao teste com base nos processos de compilação personalizados.

Dica

Se quiser implementar o aplicativo como parte do processo de compilação, você deverá usar um fluxo de trabalho compilar/implantar/testar e um ambiente de laboratório.Em seguida, é possível executar testes automatizados como parte do fluxo de trabalho ou executar testes separadamente após a conclusão do fluxo de trabalho.Para obter mais informações, consulte Fluxos de trabalho compilar-implantar-testar automatizados.

Aqui está o que é possível fazer com Team Foundation Build

  • Preparar-se para executar testes no processo de compilação

  • Executar testes automatizados

  • Especificar critérios para os testes executados pelo Visual Studio Test Runner

  • Desabilitar testes temporariamente

  • Habilitar Análise do Impacto de Teste

  • Definir várias execuções de teste

  • Configurar uma estrutura de teste unitário de terceiros

  • Trabalhar com Testes em um Processo de Compilação Personalizada

  • Obter mais informações

Preparar-se para executar testes no processo de compilação

Antes de executar testes no processo de compilação, você talvez precise primeiro preparar os testes e o sistema de compilação.

Preparar os Testes: verifique se a solução e os arquivos de teste estão marcados no controle de versão. Consulte Usar controle de versão.

Categorizar e Priorizar os Testes (Opcional): é possível atribuir categorias e prioridades aos testes e, em seguida, filtrá-los com base nesses atributos quando você executá-los na compilação. Por exemplo, você pode criar uma categoria de teste chamada CI e, em seguida, especificar essa categoria nas compilações de integração contínua. Você pode criar outra categoria para os testes de verificação de compilação chamados bvt e, em seguida, especificar essa categoria em compilações programadas como, por exemplo, a compilação noturna. Para obter mais informações, consulte Definindo categorias de teste para agrupar os testes, TestCategoryAttribute e PriorityAttribute.

Preparar o Servidor de Compilação: alguns tipos de testes só podem ser executados por um agente de compilação em um servidor de compilação configurado especialmente. Por exemplo, se estiver executando testes de interface do usuário codificados, você deverá configurar o agente de compilação para ser executado interativamente. Antes de tentar usar o processo de compilação para executar testes, verifique se eles podem ser executados no servidor de compilação que você deseja usar. Para obter mais informações, consulte Use Your Build Agent to Run Tests.

O Microsoft Visual Studio precisa ser instalado no servidor de compilação nas seguintes situações:

  • Para compilar qualquer projeto de teste CPP, você deve instalar o Visual Studio Professional ou posterior.

  • Para executar testes de unidade, ou testes de interface do usuário codificados, você deve instalar o Visual Studio Professional ou posterior.

  • Para usar dados e adaptadores de dados de diagnóstico:

    1. Cobertura de código: Visual Studio Premium ou posterior.

    2. Impacto de teste: Visual Studio Ultimate.

    3. IntelliTrace: Visual Studio Ultimate.

  • Para compilar alguns aplicativos de estilo moderno em um computador de compilação: Visual Studio Ultimate ou Visual Studio Express for Windows 8 (o sistema operacional no servidor de compilação deve ser Windows 8).

  • Para compilar e executar testes para um projeto com um assembly falsificado: Visual Studio Ultimate.

Executar testes automatizados

É possível realizar um ou mais testes na compilação com base no Modelo Padrão. Para cada execução, é possível especificar as seguintes configurações:

  • Quais testes são executados

  • Quais configurações são usadas para realizar testes

  • Se a compilação deverá falhar se um teste falhar

  1. No Team Explorer, escolha Ícone da home page Página Inicial e Ícone de compilações Compilações (teclado: Ctrl + 0,B).

  2. Na página Compilações, escolha Nova Definição de Compilação ou abra o menu de contexto da compilação ou da definição de compilação selecionada e escolha Edição de definição da compilação.

    A janela de definição da compilação é exibida.

  3. Na guia Processo da definição de compilação, marque a caixa Testes Automatizados e, em seguida, escolha o botão de reticências (...).

    A caixa de diálogo Testes Automatizados é exibida.

  4. Execute uma das seguintes etapas:

    • Para adicionar um conjunto de testes, escolha Adicionar.

    • Para alterar um conjunto de testes, escolha-o e, em seguida, Editar.

    A caixa de diálogo Adicionar/Editar Teste é exibida.

  5. (Opcional) Especifique o Nome da execução de teste. Esse nome é exibido na janela de resultados da compilação. Se você não especificar um nome, o sistema o gerará automaticamente.

  6. Se você quiser que a compilação falhe se algum dos testes nessa execução falhar, escolha Causar falha em compilação se houver falha no teste. Se você deixar essa caixa de seleção desmarcada e qualquer teste falhar, a compilação concluída será classificada como Parcialmente bem-sucedido.

  7. Testar especificação do arquivo de assembly

    Especifique os arquivos binários que contêm os testes que você deseja executar. Deixe o valor padrão (**\*test*.dll) se você quiser que o agente de compilação procure recursivamente qualquer arquivo .dll correspondente a *test*.dll no subdiretório binaries do diretório de trabalho do agente de compilação. Como alternativa, modifique a especificação de arquivo para atender às necessidades.

  8. Se você quiser que a execução de teste colete e publique dados de cobertura do código, defina Opções como Habilitar Cobertura do Código.

    Também é possível usar a opção Personalizar para especificar um arquivo .runsettings. Para obter mais informações, consulte Personalizando análise de cobertura de código.

  9. No menu Selecione a plataforma de destino para a execução de teste, escolha x86 para testar os binários 32 bits ou x64 para testar os binários 64 bits.

  10. É possível especificar critérios para os testes executados.

Especificar critérios para os testes executados pelo Visual Studio Test Runner

É possível especificar pares de nome/valor para filtrar os testes executados. Se usar a categoria de teste e os atributos de prioridade para organizar e priorizar os testes, você poderá filtrar os testes que estiver executando usando os nomes TestCategory e Priority.

É possível especificar categorias de teste das seguintes maneiras:

  • Especifique um único par de nome/valor a ser incluído. Por exemplo, você poderia ter uma categoria de teste chamada bvt. Você definiria Filtro de casos de teste como TestCategory=bvt para executar apenas testes nessa categoria.

  • Especifique várias categorias de teste usando o || ("ou" operador). Por exemplo, é possível especificar TestCategory=quick||TestCategory=gui para executar testes na categoria rápida e testes na categoria GUI.

Desabilitar testes temporariamente

Se você precisar desabilitar temporariamente testes sem excluir os conjuntos de testes que os contêm, expanda o nó Avançado e defina Desabilitar testes como Verdadeiro. Defina o valor novamente como Falso quando você quiser reabilitar os testes.

Habilitar análise do impacto de teste

Os testadores e os desenvolvedores podem precisar saber como alterações de código que englobadas em uma compilação concluída afetaram os testes. Quando você habilita a análise do impacto de teste em uma compilação, o sistema analisa e, em seguida, relata como as alterações de código afetaram os testes no relatório de compilação da compilação concluída.

Para habilitar a análise do impacto de teste em um processo de compilação com base no modelo Padrão

  1. Configure a análise do impacto de teste em um arquivo de configurações de teste.

    Para obter mais informações, consulte Como coletar dados para verificar quais testes devem ser executados após alterações feitas no código.

  2. Crie um conjunto de testes configurado para usar o arquivo de configurações do teste.

    Para obter mais informações, consulte Executar Testes Automatizados, anteriormente neste tópico.

  3. Expanda o nó Avançado e verifique se Analisar o impacto de teste está definido como Verdadeiro e se Desabilitar testes está definido como Falso.

Definir várias execuções de teste

É possível definir quantas execuções de teste você precisar para atender aos requisitos de compilação e do processo de teste da equipe. Por exemplo, talvez você precise definir várias execuções de teste em uma única compilação nos seguintes cenários:

  • Você deseja usar o Visual Studio Test Runner para testar uma solução que produz binários com números de bit 32 e 64.

  • Você tem dois conjuntos de testes:

    • Um conjunto de testes básicos de alta prioridade que devem ser bem-sucedidos. Você define um conjunto de testes que inclui uma Prioridade de Teste Mínima e uma Prioridade máxima de teste de 1. Você marca a caixa de seleção Causar falha em compilação se houver falha no teste.

    • Um conjunto de testes menos importantes que você deseja executar, mas que não precisam ser bem-sucedidos para que a compilação seja utilizável. Você define um conjunto de teste que inclui uma Prioridade de Teste Mínima de 2 e uma Prioridade máxima de teste de 3. Você deixa a caixa de seleção Causar falha em compilação se houver falha no teste desmarcada.

  • Você deseja executar o mesmo conjunto de testes com configurações de teste diferentes.

  • Você deseja que o conjunto principal de assemblies compilado esteja sujeito à cobertura de código. No entanto, você tem outro conjunto de assemblies de uma fonte externa que não exige a cobertura de código. Para habilitar esse tipo de processo, você pode usar dois conjuntos de teste configurados para usar dois grupos de arquivos de configurações de teste.

Habilitar uma estrutura de unidade de terceiros

O processo de compilação só poderá executar testes de unidade com base em estruturas de teste de unidade de terceiros se você tiver dado acesso aos conjuntos de estrutura de terceiros ao controlador de compilação.

  1. Localize ou, se necessário, especifique o caminho do controlador de compilação para assemblies personalizados.

  2. Localize ou, se necessário, crie um mapeamento da pasta de assembly personalizado no servidor para uma pasta local no espaço de trabalho.

  3. Obtenha um plug-in de terceiros de teste de unidade:

    Adaptador

    Idioma

    Aumento

    C++

    Chutzpah

    JavaScript

    Google

    C++

    MbUnit

    C#

    MSpec

    MSpec

    nUnit

    C#

    Ferramentas Python para Visual Studio

    Python

    Silverlight

    Silverlight

    TSTestAdapter

    TypeScript

    VsNodeTest

    Node.js

    xUnit.net

    C#

    xUnit++

    C++

  4. Renomeie o arquivo .vsix do plug-in para um arquivo .zip. Por exemplo, use o prompt de comando desta forma:

    C:\Downloads>ren NUnitTestAdapter.vsix NUnitTestAdapter.zip
    
  5. Descompacte o conteúdo do arquivo .zip na pasta do espaço de trabalho local mapeada na Etapa 2.

  6. Faça check-in dos arquivos.

    Dica

    Para ver estratégias para trabalhar com arquivos binários de terceiros no controle da versão, consulte Aproveitar binários de terceiros não compilados pelo código.

O [Visual Studio 2012.3] inclui uma melhoria para que as estruturas de teste da unidade de terceiros automatizem sua inclusão em definições da compilação de equipe.

Aviso

Talvez você precise instalar a versão mais recente dos pacotes NuGet para que a estrutura de teste da unidade de terceiros garanta que a estrutura inclui a melhoria da definição de compilação.

Habilitar uma Estrutura de Teste da Unidade de Terceiros em um controlador de compilação - [Visual Studio 2012.1]

  1. No Gerenciador de Soluções, abra o menu de contexto do projeto de teste e escolha Gerenciar Pacotes NuGet.

  2. Na caixa de diálogo Gerenciar Pacotes NuGet, na coluna à esquerda, escolha Online.

  3. Selecione o pacote NuGet para a estrutura de teste de unidade de terceiros e escolha Instalar.

  4. Após a conclusão da instalação do pacote NuGet, escolha Fechar.

  5. No Gerenciador de Soluções, abra o menu de contexto na solução e escolha Adicionar Solução ao Controle do Código-Fonte.

  6. Agora é possível enfileirar a compilação, e os testes com a estrutura de teste de unidade de terceiros serão executados automaticamente.

Trabalhar com testes em um processo de compilação personalizada

Se a equipe precisar de um processo de compilação com recursos mais personalizados, será possível executar testes e realizar outras tarefas relacionadas ao teste com base no processo de compilação personalizada. Para obter mais informações, consulte:

Tentar o próximo

Planejar testes manuais usando o Team Web Access

Detalhar um pouco mais

Usar o modelo padrão no processo de compilação fornece mais informações sobre como criar uma definição de compilação com base no Modelo Padrão. Este tópico inclui informações sobre configurações do número de bits de Plataforma que é possível usar durante a compilação do código.

Consulte também

Conceitos

Definir o processo de compilação

Executar testes automatizados a partir do fluxo de trabalho compilar-implantar-testar

Outros recursos

Executando testes de sistema usando o Microsoft Visual Studio