Share via


Executando testes de unidade com Test Explorer

Ajuda do gerenciador de teste do Visual Studio você integra testes de unidade em seu processo de desenvolvimento.Você pode executar testes vários projetos de teste em uma solução e classes de teste que são parte de projetos de código de produção.Projetos de teste podem usar diferentes frameworks de testes de unidade.Neste tópico, você pode saber:

Nesta seção

Estruturas de testes de unidade e projetos de teste

Executar testes no teste Explorer

  • Executar testes

  • Executar testes após cada compilação

Resultados de teste de exibição

  • Exibir detalhes de teste

  • Exibindo o código-fonte de um método de teste

Agrupamento e filtragem a lista de teste

  • Agrupando a lista de teste

  • Agrupamento por traços

  • Procurando e filtrando a lista de teste

Testes de unidade de depuração

Para analisar a tinta de código de teste de unidade

Diagnosticando problemas de desempenho do método de teste

Recursos externos

  • Orientação

Estruturas de testes de unidade e projetos de teste

O Visual Studio inclui as estruturas de testes de unidade da Microsoft para código gerenciado e para nativo.Entretanto, o teste Explorer também pode executar qualquer estrutura de testes de unidade que implementar um adaptador do gerenciador de teste.Para obter mais informações sobre como instalar estruturas de terceiros de testes de unidade, consulte Como: instalar estruturas de teste de unidade de terceiros

O teste Explorer pode executar testes vários projetos de teste em uma solução e classes de teste que são parte de projetos de código de produção.Projetos de teste podem usar diferentes frameworks de testes de unidade.Quando o código no teste é escrito para o framework .NET, o projeto de teste pode ser escrito em qualquer linguagem .NET, independentemente da linguagem de código de destino.Projetos de código nativo de C/C++ devem ser testados usando a estrutura de testes de unidade de c++.

Nesta seção

Executar testes no teste Explorer

Quando você compila o projeto de teste, os testes aparecem no teste Explorer.Se o teste Explorer não estiver visível, escolha Testar no menu do Visual Studio, escolha Janelas, escolha Gerenciador de Testes.

Explorer de teste de unidade

Como você executa, gravar, e execute novamente seus testes, exibe do gerenciador de teste os resultados em grupos padrão de Testes com falha, Testes que Passaram, Teste ignorados e Não teste de execução.Você pode alterar a maneira como o teste Explorer agrupa os testes.

Você pode executar muito de trabalho de localização, de organizar e executar testes da barra de ferramentas do gerenciador de teste.

Executar testes da barra de ferramentas Test Explorer

Hh270865.collapse_all(pt-br,VS.110).gifExecutar testes

Você pode executar todos os testes na solução, todos os testes em um grupo, ou um conjunto de testes que você seleciona.Siga um destes procedimentos:

  • Para executar todos os testes em uma solução, escolha Execute Todos.

  • Para executar todos os testes em um grupo padrão, escolha Executar... e então escolha o grupo no menu.

  • Selecione os testes individuais que você deseja executar, abra o menu de atalho para um teste selecionado e escolha então Executar testes selecionados.

A barra de passagem/falha na parte superior da janela do Explorer de teste é animada como execução de teste.No final de ensaio, a barra de passagem/falha gira o verde se todos os testes passaram ou gira o vermelho se alguma testa falha.

Hh270865.collapse_all(pt-br,VS.110).gifExecutar testes após cada compilação

Observação de cuidadoCuidado

Os testes de unidade em execução após cada compilação são suportados apenas no Visual Studio final.

Executar após a compilação

Para executar seus testes de unidade após cada compilação local, escolha Testar no menu padrão, escolha Teste de execução após a compilação na barra de ferramentas do gerenciador de teste.

Nesta seção

Resultados de teste de exibição

Como você executa, gravar, e execute novamente seus testes, exibe do gerenciador de teste os resultados em grupos de Testes com falha, Testes que Passaram, Teste ignorados e Não teste de execução.O painel de detalhes na parte inferior de teste Explorer exibe um resumo de ensaio.

Hh270865.collapse_all(pt-br,VS.110).gifExibir detalhes de teste

Para exibir detalhes de um teste individual, selecione o teste.

O painel de detalhes de teste exibe as seguintes informações:

  • O nome do arquivo de origem e o número da linha do método de teste.

  • O status de teste.

  • O tempo decorrido que o método de teste recebe a execução.

Se o teste falhar, o painel de detalhes exibe também:

  • A mensagem retornada pela estrutura de testes de unidade para teste.

  • O rastreamento de pilha no teste falhou.

Hh270865.collapse_all(pt-br,VS.110).gifExibindo o código-fonte de um método de teste

Para exibir o código-fonte para um método de teste no editor do Visual Studio, selecione o teste e então escolha Abrir Teste no menu de atalho (teclado: F12).

Nesta seção

Agrupamento e filtragem a lista de teste

O teste Explorer permite que você agrupe seus testes em categorias predefinidas.A maioria das estruturas de testes de unidade que executam no teste Explorer permitem que você defina seus próprios categorias e pares de categoria/valor para agrupar os testes.Você também pode filtrar a lista de teste por cadeias de caracteres de correspondência com propriedades de teste.

Hh270865.collapse_all(pt-br,VS.110).gifAgrupando a lista de teste

Para alterar a maneira que os testes são organizados, escolha a seta para baixo ao lado do botão Botão de teste do grupo Explorer de Agrupar por e selecione novos critérios de um agrupamento.

Testar grupos de Explorer

Group

Descrição

Duração

Os grupos testam em tempo de execução: Rápido, Médio, e Lenta.

Resultado

Teste de grupos por resultados de execução: Testes com falha, Teste ignorados, Testes que Passaram.

Sublinha

Os grupos testar os pares bycategory/valor que você define.A sintaxe para especificar categorias e valores sublinhado é definida pela estrutura de testes de unidade.

Projeto

Os grupos testam pelo nome de projetos.

Hh270865.collapse_all(pt-br,VS.110).gifAgrupamento por traços

Um sublinhado é geralmente um par nome/valor de categoria, mas também pode ser uma única categoria.Os traços podem ser atribuídos aos métodos que são identificados como um método de teste pela estrutura de testes de unidade.Uma estrutura de testes de unidade pode definir categorias sublinhado.Você pode adicionar valores as categorias sublinhado para definir seus próprios pares nome/valor da categoria.A sintaxe para especificar categorias e valores sublinhado é definida pela estrutura de testes de unidade.

Por exemplo, a estrutura de testes de unidade da Microsoft para aplicativos gerenciados, você define um par nome/valor sublinhado usando TestPropertyAttribute.A estrutura de testes de unidade do Microsoft também contém esses traços predefinidos:

Sublinhado

Descrição

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.OwnerAttribute ]

A categoria do proprietário é definida pela estrutura de testes de unidade e requer fornecer um valor de cadeia de caracteres do proprietário.

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.PriorityAttribute ]

A categoria de prioridade é definida pela estrutura de testes de unidade e requer fornecer um valor inteiro de prioridade.

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.TestCategoryAttribute ]

O atributo de TestCategory permite que você forneça uma categoria sem um valor.Uma categoria definida pelo atributo de TestCategory também pode ser a categoria de um atributo TestProperty.

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.TestPropertyAttribute ]

O atributo TestProperty permite que você defina a categoria sublinhado/pares de valores.

Traços na unidade da Microsoft que testa Framework para C++

Para definir um sublinhado, use a macro de TEST_METHOD_ATTRIBUTE .Por exemplo, definir um sublinhado chamado TEST_MY_TRAIT:

#define TEST_MY_TRAIT(traitValue) TEST_METHOD_ATTRIBUTE(L"MyTrait", traitValue)

Para usar o sublinhado definido em seus testes de unidade:

BEGIN_TEST_METHOD_ATTRIBUTE(Method1)
    TEST_OWNER(L"OwnerName")
    TEST_PRIORITY(1)
    TEST_MY_TRAIT(L"thisTraitValue")
END_TEST_METHOD_ATTRIBUTE()

TEST_METHOD(Method1)
{   
    Logger::WriteMessage("In Method1");
    Assert::AreEqual(0, 0);
}

Macros de atributo sublinhado de C++

Macro

Descrição

TEST_METHOD_ATTRIBUTE(attributeName, attributeValue)

Use a macro de TEST_METHOD_ATTRIBUTE para definir um sublinhado.

TEST_OWNER(ownerAlias)

Use o sublinhado predefinido do proprietário para especificar um proprietário do método de teste.

TEST_PRIORITY(priority)

Use o sublinhado predefinido de prioridade para atribuir prioridades relativas a seus métodos de teste.

Nesta seção

Hh270865.collapse_all(pt-br,VS.110).gifProcurando e filtrando a lista de teste

Você pode usar filtros do gerenciador de teste para limitar os métodos de teste em seus projetos que você exiba e executa.

Quando você digita uma cadeia de caracteres dentro na caixa de pesquisa do gerenciador de teste e pressione ENTER, a lista de teste é filtrada para exibir somente os testes cujos nomes totalmente qualificados contêm a cadeia de caracteres.

Para filtrar por critérios diferentes:

  1. Abra a lista suspensa à direita da caixa de pesquisa.

  2. Escolha novos critérios.

  3. Insira o valor de filtro entre aspas.

Categorias de filtro de pesquisa

ObservaçãoObservação

Pesquisas não diferenciam maiúsculas de minúsculas e correspondem a cadeia de caracteres especificada qualquer parte dos critérios de valor.

Qualificador

Descrição

Sublinhado

Procura a categoria e o valor sublinhado por correspondências.A sintaxe para especificar categorias sublinhado e valores são definidos pela estrutura de testes de unidade.

Projeto

Procura os nomes de projeto de teste por correspondências.

Mensagem de erro

Procura as mensagens de erro definidos pelo usuário retornadas por com falha afirma para correspondências.

Caminho de arquivo

Procura o nome de arquivo totalmente qualificado de arquivos de origem de teste por correspondências.

Nome totalmente qualificado

Procura o nome de arquivo totalmente qualificado de namespaces, de classes, e métodos de teste por correspondências.

Saída

Procura as mensagens de erro definidos pelo usuário que são gravadas para a saída padrão (stdout) ou o erro padrão (stderr).A sintaxe para especificar mensagens de saída é definida pela estrutura de testes de unidade.

Resultado

Procura os nomes de categoria do gerenciador de teste por correspondências: Testes com falha, Teste ignorados, Testes que Passaram.

Nesta seção

Testes de unidade de depuração

Você pode usar o teste Explorer para iniciar uma sessão de depuração para os testes.Depurar seu código com o depurador do Visual Studio leva você perfeitamente e adiantar entre os testes de unidade e o projeto no teste.Para iniciar depuração:

  1. No editor do Visual Studio, definir um ponto de interrupção em um ou mais métodos de teste que você deseja depurar.

    ObservaçãoObservação

    Como os métodos de teste podem executar em qualquer ordem, definir pontos de interrupção em todos os métodos de teste que você deseja depurar.

  2. No teste Explorer, selecione os métodos de teste e então escolha Depurar testes selecionados no menu de atalho.

Para obter mais informações, sobre o depurador, consulte Depuração no Visual Studio.

Nesta seção

Para analisar a tinta de código de teste de unidade

ObservaçãoObservação

A cobertuda de código de teste da unidade está disponível apenas no Visual Studio Ultimate e no Visual Studio Premium.

Você pode determinar a quantidade de seu código do produto que está sendo testado realmente por seus testes de unidade usando a ferramenta de tinta de código Visual Studio.Você pode executar a tinta de código em teste ou selecionados em todos os testes em uma solução.

Para executar a tinta de código para métodos de teste em uma solução:

  1. Escolha Testes no menu do Visual Studio e então escolha Analisar Cobertura de Código.

  2. Escolha um dos seguintes comandos submenu:

    • Teste selecionados executa os métodos de teste que você selecionou no teste Explorer.

    • Tudo teste é executado todos os métodos de teste na solução.

A janela de resultados de tinta de código exibe a porcentagem dos blocos de código do produto que foram exercitados por linha, funcionam, classe, módulo e namespace.

Para obter mais informações, consulte Usando a cobertura de código para determinar como muito código está sendo testado.

Nesta seção

Diagnosticando problemas de desempenho do método de teste

Para diagnosticar como um método de teste está colocando demasiadas hora, selecione o método no teste Explorer e escolha Perfil no menu de atalho.Consulte Analisando o desempenho do aplicativo usando as ferramentas de criação de perfil.

Nesta seção

Recursos externos

Hh270865.collapse_all(pt-br,VS.110).gifOrientação

Teste para entrega contínuo com Visual Studio 2012 – capítulo 2: Testes de unidade: Testando o interior

Consulte também

Conceitos

Verificando o código usando testes de unidade

Como: executar um teste de unidade como um processo de 64 bits