Partilhar via


Sobre testes de pipeline

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Este artigo descreve os termos comumente usados em pipeline relatório de teste e de análise de teste e fornece dicas para testar melhor no Azure Pipelines.

Prazo Definição
Duração Tempo decorrido na execução de teste , execução de teste , ou execução inteira de teste em um pipeline de compilação ou liberação.
Proprietário Proprietário de um teste , um ou uma execução de teste . O proprietário do teste é normalmente especificado como um atributo no código de teste. Consulte a tarefa Publish Test Results para ver o mapeamento do atributo Proprietário para formatos de resultados de teste suportados.
Falha na compilação Referência à build que apresenta a primeira ocorrência de falhas consecutivas de um caso de teste.
Falha no lançamento Referência à versão com a primeira ocorrência de falhas consecutivas de um caso de teste.
Resultado Há 15 resultados possíveis para um resultado de teste: Abortado, Bloqueado, Erro, Reprovado, Inconclusivo, Em andamento, Nenhum, Não aplicável, Não executado, Não afetado, Aprovado, Pausado, Tempo limite, Não especificado e Aviso.
Alguns dos resultados mais utilizados são:
- abortado: A execução do teste terminou abruptamente devido a fatores internos ou externos, por exemplo, código incorreto, problemas ambientais.
- Falhou: Teste não atingiu o resultado desejado.
- inconclusivo: Teste sem resultado definitivo.
- Não executado: Teste marcado como ignorado durante a execução.
- Não afetado: Teste não afetado pela alteração de código que disparou o pipeline.
- Aprovado: Teste executado com êxito.
- Tempo limite: Duração de execução do teste excedendo o limite especificado.
Teste Instável Um teste com comportamento não determinístico. Por exemplo, o teste pode resultar em resultados diferentes para a mesma configuração, código ou entradas.
Filtrar Mecanismo para procurar os resultados do teste dentro do conjunto de resultados, usando os atributos disponíveis. Saiba mais.
Agrupamento Uma ajuda para organizar a exibição dos resultados do teste com base em atributos disponíveis, como Requisito, Arquivos de Teste, Prioridadee muito mais. Tanto relatórios de teste quanto análises de teste fornecem suporte para agrupar resultados de teste.
Percentagem de aprovação Medir o sucesso do resultado do teste para uma única instância de execução ou ao longo de um período de tempo.
Prioridade Especifica o grau de importância ou criticidade de um teste. A prioridade é normalmente especificada como um atributo no código de teste. Consulte a tarefa Publicar Resultados de Teste para ver o mapeamento do atributo Priority para formatos de resultados de teste suportados.
Análise de teste Uma visão dos dados históricos de teste para fornecer informações significativas.
Caso de teste Identifica exclusivamente um único teste dentro da ramificação especificada.
Arquivos de teste Testes de grupo com base na forma como são embalados; como arquivos, DLLs ou outros formatos.
Relatório de teste Uma visão de uma única instância de execução de teste no pipeline que contém detalhes de status e ajuda para solução de problemas, rastreabilidade e muito mais.
Resultado do teste Instância única de execução de um caso de teste com um resultado e detalhes específicos.
Execução de teste Agrupamento lógico dos resultados dos ensaios com base em:
- Teste executado usando tarefas internas: Todos os testes executados usando uma única tarefa, como Visual Studio Test, Ant, Maven, Gulp, Grunt ou Xcode serão relatados em uma única execução de teste
- Resultados publicados usando Publicar Resultados de Teste tarefa: Fornece uma opção para agrupar todos os resultados de teste de um ou mais arquivos de resultados de teste em uma única execução ou execuções individuais por arquivo
- Resultados de testes publicados usando API(s): API(s) fornecem a flexibilidade para criar execuções de teste e organizar resultados de teste para cada execução, conforme necessário.
Rastreabilidade Capacidade de rastrear no sentido do avanço ou recuo a um requisito, bug ou código-fonte com base num resultado de teste.

Melhores práticas

Garantir a confiabilidade do aplicativo requer de testes abrangentes no Azure Pipelines, com testes de unidade e testes de integração sendo essenciais. Testar integrações em ambientes de nuvem, particularmente aplicações sem servidor, representa desafios devido a arquiteturas distribuídas, permissões IAM mal configuradase problemas de integração entre serviços.

Para resolver isso, considere executar seu código localmente enquanto interage com serviços originais do Azure, facilitando testes realistas e habilitando ferramentas de depurador adequadas para testes automatizados. A implementação dessa abordagem requer o provisionamento de recursos efêmeros do Azure. O ideal é criar contas separadas para cada ambiente; alternativamente, o provisionamento dinâmico nos pipelines do Azure é possível, embora isso aumente o tempo de execução e exija um planejamento cuidadoso de descomissionamento de recursos. Para minimizar conflitos de nomenclatura, evite nomenclatura explícita de recursos, a menos que necessário, e inclua nomes de ambiente em nomes de recursos.

Ajuda e suporte