Estender testes com texto fantasma e corrigir testes com falha

Concluído

Depois que o projeto de teste contiver alguns casos de teste, GitHub Copilot poderá ajudá-lo a estender a cobertura e resolver falhas sem sair Visual Studio Code. Sugestões de texto fantasma adicionam casos de teste adicionais dentro do arquivo que você está editando, enquanto o Gerenciador de Testes e o /fixTestFailure comando barra ajudam a diagnosticar e corrigir testes com falha. Juntos, esses recursos completam o ciclo do fluxo de trabalho de teste unitário que você iniciou na exibição de Chat.

Estender a cobertura de teste com sugestões de texto fantasma

O texto fantasma é a complementação de código em linha que aparece conforme você digita no editor. Quando um arquivo de teste já contém alguns casos de teste, GitHub Copilot usa os padrões existentes para sugerir casos de teste semelhantes para cenários adicionais. Essa é a maneira mais rápida de ampliar a cobertura depois que seus testes iniciais já estiverem prontos.

Para estender um arquivo de teste com texto fantasma:

  1. Abra um arquivo de teste que contenha pelo menos um ou dois casos de teste completos.

  2. Posicione o cursor no final do último caso de teste e pressione Enter para iniciar uma nova linha.

  3. Comece a digitar um novo método de teste ou escreva um comentário descritivo, como // Test that ProcessOrder throws when the order total is negative.

    GitHub Copilot exibe uma sugestão de texto fantasma que conclui o método de teste com base no código ao redor, nas importações e nos padrões de teste existentes.

  4. Pressione Tab para aceitar a sugestão ou pressione Esc para descartá-la.

  5. Refinar a sugestão aceita conforme necessário. Você pode continuar digitando para estender o teste ou disparar a próxima sugestão de texto fantasma pressionando Enter.

O texto fantasma funciona melhor quando:

  • O arquivo de teste já mostra o padrão que você deseja que GitHub Copilot siga (por exemplo, estrutura Arrange-Act-Assert ou um atributo de teste parametrizado).
  • O método em teste é referenciado no arquivo por meio de uma using diretiva ou um namespace importado.
  • Seu comentário indica claramente o cenário que você deseja testar.

Dica

Use o texto fantasma para adicionar casos de borda a uma classe de teste existente rapidamente. Para um trabalho mais substancial, como criar uma classe de teste totalmente nova, retorne ao modo de exibição chat e use os agentes Ask, Plan ou Agent.

Corrigir testes com falha do Gerenciador de Testes

Quando um teste falha, o Explorador de Testes fornece acesso com um clique ao GitHub Copilot.

  1. Execute seus testes no Gerenciador de Testes ou pelo botão verde de execução ao lado de um método de teste.

  2. No Gerenciador de Testes, passe o mouse sobre um teste com falha.

  3. Selecione o botão Corrigir Falha de Teste (ícone de brilho).

    GitHub Copilot abre uma sessão de chat, anexa o teste com falha e sua saída como contexto e propõe uma correção.

  4. Examine a correção proposta.

    A sugestão pode atualizar o código do aplicativo, o código de teste ou ambos, dependendo da causa da falha.

  5. Aplique ou descarte a sugestão.

    Use Keep para aplicar as alterações sugeridas ou use Desfazer para descartá-las. Execute novamente o teste para confirmar a correção.

Corrigir testes com falha com /fixTestFailure

Você também pode iniciar o fluxo de trabalho de correção no modo de exibição chat, o que é útil quando você deseja anexar um contexto extra ou quando estiver trabalhando em vários testes com falha ao mesmo tempo.

  1. Abra a visualização do chat.

  2. Insira o comando barra /fixTestFailure.

  3. Opcionalmente, anexe contexto adicional, como arquivos de origem relacionados ou saída de terminal recente.

  4. Siga as sugestões de GitHub Copilot para corrigir o teste com falha e execute novamente o teste para confirmar a correção.

Permitir que o Agente monitore e corrija falhas automaticamente

Quando você usa o Agente para executar testes, ele monitora a saída do teste, identifica falhas e tenta corrigir e executar novamente os testes automaticamente. Isso é útil quando você está estruturando um novo projeto de teste ou fazendo grandes alterações que afetam muitos testes ao mesmo tempo.

Para usar o Agente para manutenção automática de teste:

  1. Abra a visualização de chat e selecione Agente no seletor de agente.

  2. Forneça um prompt que inclua a execução dos testes, como: Run the xUnit tests in the Calculator.Tests project. If any tests fail, propose and apply fixes, then rerun the tests until they pass.

  3. Confirme ou rejeite as invocações de ferramenta e os comandos de terminal que o Agente sugere.

  4. Examine as alterações aplicadas pelo Agente antes de aceitá-las.

Escolha a ferramenta certa para o trabalho

Use as seguintes diretrizes para decidir qual recurso usar:

  • O texto fantasma é melhor quando você deseja adicionar mais casos de teste a um arquivo de teste existente que já mostra o padrão.
  • Corrigir falha de teste no Gerenciador de Testes é melhor quando um único teste falha e você deseja uma correção rápida e focada.
  • /fixTestFailure na visualização de Chat é melhor quando você deseja adicionar contexto extra ou lidar com várias falhas.
  • As execuções de teste orientadas por agente são melhores quando você deseja que o GitHub Copilot execute testes, diagnostique falhas e aplique correções em vários arquivos em uma sessão.

Juntas, essas ferramentas completam o fluxo de trabalho de teste de unidade. A visão Chat, o agente Plan e o Agent geram os testes iniciais; o texto fantasma adiciona cobertura extra; e os recursos de correção de falhas em testes mantêm a suíte de testes estável à medida que seu código evolui.