Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Serviços de DevOps do Azure
A produtividade para desenvolvedores depende da capacidade dos testes de encontrar problemas reais com o código em desenvolvimento ou atualização de forma oportuna e confiável. Os testes Flaky apresentam uma barreira para encontrar problemas reais, uma vez que as falhas muitas vezes não se relacionam com as mudanças que estão sendo testadas. Um teste instável é um teste que fornece resultados diferentes, como aprovado ou reprovado, mesmo quando não há alterações no código-fonte ou no ambiente de execução. Os testes Flaky também afetam a qualidade do código enviado.
Nota
Esse recurso só está disponível nos Serviços de DevOps do Azure. Normalmente, os novos recursos são introduzidos primeiro no serviço de nuvem e, em seguida, disponibilizados no local na próxima versão principal ou atualização do Azure DevOps Server. Para obter mais informações, consulte Linha do tempo do recurso do Azure DevOps.
O objetivo de trazer o gerenciamento de testes escamosos no produto é reduzir a dor do desenvolvedor causada por testes escamosos e atender a todo o fluxo de trabalho. O gerenciamento de testes Flaky oferece os seguintes benefícios.
Deteção - Deteção automática de teste instável com repetição ou com extensibilidade para integrar o seu próprio método de deteção personalizado
Gestão da inconsistência - Uma vez que um teste é marcado como inconsistente, os dados estão disponíveis para todos os fluxos de trabalho para esse ramo
Relatório sobre testes intermitentes - Possibilidade de escolher entre evitar falhas de compilação causadas por testes intermitentes ou usar a etiqueta de intermitência apenas para solução de problemas.
Resolução - Criação manual de bugs ou teste manual de marcação e desmarcação como escamoso com base na sua análise
Fechar o ciclo - Reiniciar teste instável como consequência da resolução de erros / inserção manual
Ative a gestão de testes intermitentes
Para configurar o gerenciamento de testes intermitentes, escolha Configurações do Projeto e selecione Gerenciamento de Testes na seção Pipelines.
Deslize o botão Ligar/Desligar para Ativado.
A configuração padrão para todos os projetos é usar testes instáveis para resolução de problemas.
Nota
Alternar entre sistemas é intrinsecamente perturbador, pois todo o histórico de instabilidade armazenado no Azure DevOps é eliminado durante a transição.
Deteção de teste irregular
O gerenciamento de testes Flaky suporta deteção personalizada e do sistema.
Deteção do sistema: O Azure DevOps tem um mecanismo interno para detetar testes instáveis. Isso envolve a reexecução dos testes com falha dentro da mesma execução de pipeline. Se um caso de teste falhar inicialmente, mas passar na nova execução, ele será marcado como instável. Essa deteção é fortemente acoplada à tarefa VSTest , que reexecuta testes com falha na mesma execução de tarefa. Outro método envolve a reexecução de trabalhos com falha no pipeline (manualmente clicando em "reexecutar trabalhos com falha" em qualquer execução de pipeline). Se um teste passar na nova execução, será marcado como instável.
Nota
Depois que um teste é marcado como flaky, os dados ficam disponíveis para todos os pipelines dessa ramificação para ajudar na solução de problemas em cada pipeline.
Deteção personalizada: essa abordagem permite que sistemas externos integrem sua própria lógica para detetar testes escamosos e confiem no Azure DevOps para rastreamento e gerenciamento consistentes. A comunicação com o Azure DevOps é habilitada usando a API de Atualização de Metadados de Resultado. A API requer um ID de referência de caso de teste, um sinalizador indicando se o teste é considerado instável e a ramificação do repositório onde a instabilidade foi observada. O usuário deve ser capaz de obter a ID de referência do caso de teste da API Get Test Result By Id . Assim que esta informação é enviada para o Azure DevOps, o sistema armazena e propaga o estado de instabilidade para esse caso de teste em execuções de pipeline posteriores. Depois que um teste for marcado como instável, o Azure DevOps continuará a tratá-lo dessa forma até que seja desmarcado manualmente.
Opções de teste instáveis
As opções de testes Flaky especificam como os testes Flaky são apresentados nos relatórios de teste, bem como as funcionalidades de resolução, conforme descrito nas secções a seguir.
Gestão e relatórios de testes instáveis
Na página Gestão de testes, em Opções de teste instáveis, você pode definir opções sobre como os testes instáveis são incluídos no relatório Resumo do teste. Os dados do teste Flaky para o teste aprovado e reprovado estão disponíveis em Resultados do teste. A tag Flaky ajuda a identificar testes instáveis. Por padrão, testes instáveis são incluídos no Resumo do Teste. No entanto, se pretendes garantir que falhas de testes instáveis não causem falhas no teu pipeline, podes optar por não incluí-las no teu relatório de testes e suprimir a falha. Essa opção garante que os testes escamosos (aprovados e reprovados) sejam removidos da porcentagem de aprovação e mostrados em Testes não relatados, conforme mostrado na captura de tela a seguir.
Nota
O relatório de resumo de teste é atualizado somente para a tarefa de teste do Visual Studio e a tarefa Publicar resultados de teste. Talvez seja necessário adicionar um script personalizado para suprimir falhas de teste intermitentes em outros cenários.
Testes marcados como instáveis
Você pode marcar ou desmarcar um teste como instável com base na análise ou no contexto, escolhendo Instável (ou Não Instável, dependendo de o teste já estar marcado como instável).
Quando um teste é marcado como instável ou estável num pipeline, nenhuma alteração é feita no pipeline atual. Somente em execuções futuras desse teste é que a configuração escamosa alterada é avaliada. Os testes marcados como instáveis têm a etiqueta 'Marcado como instável' na interface de utilizador.
Ajuda e suporte
- Consulte a nossa página de resolução de problemas
- Obtenha conselhos sobre o Stack Overflow e obtenha suporte através da Comunidade de Programadores