Skip to main content

Apprendre à déboguer avec GitHub Copilot

Identifiez et corrigez les erreurs dans votre code en demandant de l'aide Ă  GitHub Copilot.

La recherche et la rĂ©solution des bogues dans le code peuvent ĂȘtre frustrantes, en particulier lorsque vous ĂȘtes un nouveau dĂ©veloppeur. Heureusement, des outils comme GitHub Copilot permettent d'identifier et d'Ă©liminer rapidement les bogues, ce qui vous permet de vous concentrer sur un travail plus crĂ©atif et plus intĂ©ressant.

Prérequis

Les exemples de cet article supposent que vous utilisez GitHub Copilot pour dĂ©boguer un projet Python dans Visual Studio Code. (VS Code). Pour suivre les exemples, vous devez :

Apprendre à déboguer à l'aide d'exemples

Il y a deux situations principales que vous rencontrerez lorsque vous essaierez d'exĂ©cuter un code boguĂ© :

  • Votre code s’arrĂȘte avant qu’il ne s’exĂ©cute, et vous recevez un message d’erreur.
  • Votre code s’exĂ©cute sans erreur, mais la sortie est diffĂ©rente de ce que vous attendiez.

Heureusement, Copilot peut vous aider à déboguer votre code dans les deux cas. Pour commencer, passez en revue les exemples suivants.

Débogage d'une erreur avec GitHub Copilot

Lorsque vous exĂ©cutez un code boguĂ©, vous recevez souvent un message d'erreur. Le message vous indique le fichier et la ligne oĂč l’erreur s’est produite et dĂ©crit briĂšvement ce qui s’est passĂ©. Toutefois, les messages d’erreur peuvent ĂȘtre dĂ©routants. Pour bien comprendre et corriger le problĂšme, nous pouvons demander de l'aide Ă  Copilot.

Essayons avec un exemple de rĂ©fĂ©rentiel : new2code/debug-with-copilot.

Clonage du rĂ©fĂ©rentiel d’exemples

Tout d’abord, nous devons crĂ©er une copie locale du rĂ©fĂ©rentiel :

  1. Commencer à cloner le référentiel new2code/debug-with-copilot dans VS Code.
  2. Choisissez un emplacement pour enregistrer le référentiel sur votre ordinateur, puis cliquez sur Sélectionner comme destination du référentiel.
  3. Lorsque vous y ĂȘtes invitĂ©, ouvrez le rĂ©fĂ©rentiel.

Exécution du fichier bogué

À prĂ©sent, nous allons exĂ©cuter le fichier bugged_dice_battle.py. Ce programme simule une bataille de dĂ©s entre deux joueurs.

  1. Dans VS Code, ouvrez et passez en revue le fichier bugged_dice_battle.py.

  2. Ouvrez la Palette de commandes en appuyant sur Ctrl+Maj+P (Windows/Linux) ou Cmd+Maj+P (Mac).

  3. Tapez Terminal: Create New Terminal, puis appuyez sur Entrée.

  4. Dans l’onglet terminal, collez la commande suivante.

    Windows :

    Shell
    py bugged_dice_battle.py
    

    Mac ou Linux :

    Shell
    python bugged_dice_battle.py
    
  5. Appuyez sur la touche Entrée pour exécuter le programme.

Malheureusement, nous obtenons un texte d'erreur dans notre terminal qui se termine par le message suivant :

TypeError : ne peut concatĂ©ner qu’une chaĂźne (str) (pas un entier « int Â») Ă  une chaĂźne (str)

Débogage du fichier

Pour comprendre ce que signifie cette erreur, ouvrez Copilot Chat dans VS Code, puis collez et envoyez le prompt suivant :

Text
Explain in depth why my code produces the following error and how I can fix it:

TypeError: can only concatenate str (not "int") to str

Copilot répondra que l'erreur se produit parce que nous essayons de concaténer les entiers. die_1 et die_2 à des chaßnes, et vous ne pouvez concaténer que des chaßnes à des chaßnes.

Il fournira également une version mise à jour de notre code qui corrige le bogue en utilisant la fonction str() pour convertir les entiers en chaßnes avant de les concaténer. Exercez-vous à la derniÚre étape du débogage en appliquant la suggestion de Copilot au fichier.

Débogage d'une sortie incorrecte avec GitHub Copilot

Parfois, le code en attente s’exĂ©cute sans gĂ©nĂ©rer d’erreurs, mais la sortie est clairement incorrecte. Dans ce cas, le dĂ©bogage peut ĂȘtre plus difficile car VS Code ne peut pas vous indiquer l'emplacement ou la description du bogue.

Pour ces bogues « invisibles », Copilot est particuliĂšrement utile. Passons Ă  la pratique avec l’autre fichier de notre rĂ©fĂ©rentiel d’exemple : bugged_factorial_finder.py. Il s'agit d’un programme Python censĂ© calculer une factorielle.

Exécution du fichier bogué

Tout d’abord, exĂ©cutons le programme pour observer le rĂ©sultat incorrect :

  1. Ouvrez et passez en revue le fichier bugged_factorial_finder.py.

  2. Dans le terminal que vous avez créé prĂ©cĂ©demment, collez la commande suivante. Windows :

    Shell
    py bugged_factorial_finder.py
    

    Mac ou Linux :

    Shell
    python bugged_factorial_finder.py
    
  3. Appuyez sur la touche Entrée pour exécuter le programme.

Malheureusement, le code ne fonctionne pas comme prévu. Nous voulons qu'il retourne 720, la valeur correcte de la factorielle 6, mais le résultat est beaucoup plus élevé que cela.

Débogage du fichier

Pour comprendre ce qui n’a pas fonctionnĂ©, ouvrez Copilot Chat et envoyez le prompt suivant :

Text
Why is the output of this code so much higher than expected? Please explain in depth and suggest a solution.

Copilot indiquera que, parce que nous utilisons l'opĂ©rateur *= nous multiplions en fait factorial par les deux i et factorial. En d’autres termes, nous multiplions par un factorial supplĂ©mentaire pour chaque itĂ©ration de la boucle.

Pour corriger cette erreur, Copilot suggĂ©rera un code qui supprime l'Ă©lĂ©ment supplĂ©mentaire factorial de l'Ă©quation, ou qui modifie *= l'opĂ©rateur Ă  =. Effectuez cette modification maintenant !

Débogage de votre propre projet

Maintenant que vous vous ĂȘtes exercĂ© Ă  dĂ©boguer quelques programmes simples avec Copilot, vous pouvez utiliser les mĂȘmes mĂ©thodologies pour trouver et corriger les bogues qui se cachent dans votre propre travail.

Par exemple, pour dĂ©boguer un message d'erreur gĂ©nĂ©rĂ© par votre code, envoyez Copilot l'invite suivante :

Text
Explain in depth why my code produces the following error and how I can fix it:

YOUR-ERROR-MESSAGE

Sinon, si vous déboguez une sortie incorrecte, demandez Copilot pourquoi la sortie est incorrecte et comment vous pouvez la corriger. Pour obtenir les meilleurs résultats, fournissez autant de contexte que possible sur la façon dont la sortie diffÚre de vos attentes.

Avec ces tactiques, vous ĂȘtes bien Ă©quipĂ© pour commencer Ă  Ă©craser les bogues dans votre projet !

Étapes suivantes

Au fur et à mesure que vous coderez, vous rencontrerez probablement des scénarios de problÚmes spécifiques et des erreurs difficiles à déboguer. Pour une liste des problÚmes potentiels et des exemples de prompts Copilot Chat pour les corriger, consultez Erreurs de débogage.