Recommandations pour l'écriture d'un bug

  • Raccourci de la révision : Recommandations_pour_l'écriture_d'un_bug
  • Titre de la révision : Recommandations pour l'écriture d'un bug
  • ID de la révision : 282109
  • Créé :
  • Créateur : Prenon
  • Version actuelle ? Non
  • Commentaire Adding translated page from EN

Contenu de la révision

Principes de base

Un rapport d'anomalie rédigé de manière efficace est plus succeptible d'être corrigé. Ce guide explique comment procéder.

  • Etre précis
  • Donner des explications claires de façon à ce que d'autres puissent reproduire l'anomalie
  • Une seule anomalie par rapport
  • Même l'anomalie la plus insignifiante doit être rapportée - de petits problèmes peuvent en masquer de plus importants
  • Séparer clairement les faits et les suppositions

Introduction

  1. Reproduisez votre anomalie sur un build récent de l'application, afin de vous assurer qu'il n'a pas déjà été corrigé.

Ajouter un lien vers FAQ sur "recent build"

  1. Faites une recherche dans Bugzilla pour vérifier que votre anomalie n'a pas déjà été rapportée

(Tutoriel en anglais : tutorial).

Rapporter une nouvelle anomalie

ATTENTION : la langue utilisée dans Bugzilla est uniquement l'anglais.

Si vous avez reproduit l'anomalie sur un build récent et que personne ne semble l'avoir déjà rapportée, alors :

  1. Choisissez "Enter a new bug" (le formulaire est en anglais)
  2. Sélectionnez le produit dans lequel vous avez trouvé l'anomalie
  3. Remplissez le formulaire. Voici quelques éléments d'aide :

Component : (composant) La partie du logiciel dans laquelle apparaît l'anomalie

Ce champ est obligatoire. Cliquez sur le mot "Component" pour obtenir une description de chaque composant. Si aucun ne vous semble approprié, choisissez un composant général ("General").

OS : Sur quel Système d'Exploitation l'avez-vous trouvée ? (par exemple Linux, Windows XP, Mac OS X.)

Si l'anomalie se produit sur plusieurs Systèmes d'Exploitation, sélectionnez "All" (tous). Si votre Système d'Exploitation n'apparaît pas dans la liste, choisissez "Other" (autre).

Summary : (Résumé) Comment décririez-vous l'anomalie, en 60 caractères maximum ?

Un bon résumé doit permettre une identification rapide et exhaustive du rapport d'anomalie. Il doit décrire le problème rencontré et non la solution que vous préconiseriez.

  • Bon : "Cancelling a File Copy dialog crashes File Manager" (Annuler une boîte de dialogue de copie d'un fichier plante le Gestionnaire de Fichiers)
  • Mauvais : "Software crashes" (Le programme plante)
  • Mauvais : "Browser should work with my web site" (le navigateur devrait fonctionner avec mon site web)

Description : Les détails de votre rapport d'anomalie, qui incluent :

Overview : (vue d'ensemble) Une version plus détaillée de votre résumé.

Drag-selecting any page crashes Mac builds in the NSGetFactory function. (La sélection à l'intérieur d'une page plante les builds MAC dans la fonction NSGetFactory)

Steps to Reproduce : (Etapes permettant la reproduction) Les actions réduites à leur plus simple expression permettant de reproduire l'anomalie. Préciser les éléments de configuration si nécessaire.

1) Ouvrir une page Web (J'ai utilisé la page d'exemple : resource:/res/samples/test0.html)

2) Faire une sélection dans la page (Placer le pointeur de la souris n'importe où dans la page, appuyer sur le bouton droit et le maintenir appuyé, puis déplacer le pointeur vers le bas de la page).

Actual Results : (Résultat actuel) Ce qui est arrivé après les étapes décrites ci-dessus.

L'application a planté.

Expected Results : (Résultat attendu) Ce qui aurait dû arriver en l'absence d'anomalie.

La fenêtre devrait défiler vers le bas. Le texte devrait être sélectionné. 
(Ou, au moins, l'application ne devrait pas planter)

Build Date & Platform : (Date du build et plateforme) La date et la plateforme du build dans lequel l'anmalie a été rencontrée pour la première fois.

Build 2006-08-10 sur Mac OS 10.4.3

Additional Builds and Platforms : (Builds et plateformes additionnels) Indiquer ici si l'anomalie apparaît sur d'autres plateformes (ou navigateurs, si applicable).

N'apparaît pas sur Build 2006-08-10 sur Windows XP Home (Service Pack 2)

Additional Information : (Informations complémentaires) Toute autre information utile.

Pour les anomalies bloquantes :

  • Win32 : Si vous rencontrez une erreur Dr. Watson, veuillez noter le type d'erreur et le module ayant planté l'application (par exemple "Violation d'accès dans mozilla.exe").
  • Mac OS X : Quand l'application plante, cliquer sur le bouton "Report" (ou "Rapport d'erreur") dans la fenêtre qui s'affiche alors, puis copier l'ensemble du texte contenu dans la zone de texte sous le message "Problem and system information" (ou "Information sur l'erreur rencontrée et le système). Insérez-le dans votre rapport d'anomalie. Il n'est pas nécessaire d'envoyer l'anomalie à Apple. Fermez simplement la fenêtre une fois son texte copié.
  • Unix: Veuillez fournir une stack trace simplifiée, qui peut être générée en tapant l'instruction <tt>gdb mozilla core </tt> dans une fenêtre Shell.
Date/Time:      2006-12-26 12:15:20.089 -0500
OS Version:     10.4.8 (Build 8L2127)
Report Version: 4

Command: firefox-bin
Path:    /Applications/Firefox.app/Contents/MacOS/firefox-bin
Parent:  WindowServer [71]

Version: 2.0.0.1 (2.0.0.1)

PID:    114
Thread: 0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x000000ca

Thread 0 Crashed:
0   libxpcom_core.dylib 	0x0186329b AppendUTF8toUTF16(char const*, nsAString_internal&) + 31
1   libxpcom_core.dylib 	0x01822916 nsTextFormatter::smprintf_free(unsigned short*) + 3248
... (many many more lines like this) ...

Add an attachment : (Attacher un fichier) Vous pouvez attacher des fichiers utiles à votre rapport d'anomalie. Les informations de plus de 20 lignes doivent être fournies par ce biais. De même, si vous possédez un fichier HTML démontrant l'anomalie, vous devez l'attacher. Il n'est possible d'attacher qu'un seul fichier lors de la soumission du rapport d'anomalie, donc si votre démonstration en nécessite plusieurs, rouvrez le rapport que vous venez de créer pour ajouter des fichiers attachés supplémentaires. Dans ce cas attachez tout fichier complémentaire (par exemple des images ou copies d'écran) en premier, puis, avant de le télécharger, modifiez dans le fichier HTML les adresses URL des fichiers précédemment attachés afin que votre démonstration fonctionne de manière automatique. Il est nécessaire de demander une autorisation si vous souhaitez attacher plus de 5 fichiers.

Relisez minutieusement votre rapport d'anomalie pour en exclure toute erreur ou omission, puis cliquer sur le bouton "Commit" (valider). Votre rapport d'anomalie figurera désormais dans la base de données Bugzilla.

Source de la révision

<h2 name="Principes_de_base">Principes de base</h2>
<p>Un rapport d'anomalie rédigé de manière efficace est plus succeptible d'être corrigé. Ce guide explique comment procéder.
</p>
<ul><li> Etre précis
</li><li> Donner des explications claires de façon à ce que d'autres puissent reproduire l'anomalie
</li><li> Une seule anomalie par rapport
</li><li> Même l'anomalie la plus insignifiante doit être rapportée - de petits problèmes peuvent en masquer de plus importants
</li><li> Séparer clairement les faits et les suppositions
</li></ul>
<h2 name="Introduction">Introduction</h2>
<ol><li> Reproduisez votre anomalie sur un build récent de l'application, afin de vous assurer qu'il n'a pas déjà été corrigé.
</li></ol>
<p><span class="comment">Ajouter un lien vers FAQ sur "recent build"</span>
</p>
<ol><li> Faites une recherche dans Bugzilla pour vérifier que votre anomalie n'a pas déjà été rapportée
</li></ol>
<p>(Tutoriel en anglais : <a class="external" href="http://www.mozilla.org/quality/help/screening-duplicates.html">tutorial</a>).
</p>
<h2 name="Rapporter_une_nouvelle_anomalie">Rapporter une nouvelle anomalie</h2>
<p><b>ATTENTION : la langue utilisée dans Bugzilla est uniquement l'anglais.</b>
</p><p>Si vous avez reproduit l'anomalie sur un build récent et que personne ne semble l'avoir déjà rapportée, alors :
</p>
<ol><li> Choisissez "<a class="external" href="https://bugzilla.mozilla.org/enter_bug.cgi?format=guided">Enter a new bug</a>" (le formulaire est en anglais)
</li><li> Sélectionnez le produit dans lequel vous avez trouvé l'anomalie
</li><li> Remplissez le formulaire. Voici quelques éléments d'aide :
</li></ol>
<p><b>Component :</b> (composant) La partie du logiciel dans laquelle apparaît l'anomalie
</p><p>Ce champ est obligatoire. Cliquez sur le mot "Component" pour obtenir une description de chaque composant. Si aucun ne vous semble approprié, choisissez un composant général ("General").
</p><p><b>OS :</b> Sur quel Système d'Exploitation l'avez-vous trouvée ? (par exemple Linux, Windows XP, Mac OS X.)
</p><p>Si l'anomalie se produit sur plusieurs Systèmes d'Exploitation, sélectionnez "All" (tous). Si votre Système d'Exploitation n'apparaît pas dans la liste, choisissez "Other" (autre).
</p><p><b>Summary :</b> (Résumé) Comment décririez-vous l'anomalie, en 60 caractères maximum ?
</p><p>Un bon résumé doit permettre une identification rapide et exhaustive du rapport d'anomalie. Il doit décrire le problème rencontré et non la solution que vous préconiseriez.
</p>
<ul><li> Bon : "Cancelling a File Copy dialog crashes File Manager" (Annuler une boîte de dialogue de copie d'un fichier plante le Gestionnaire de Fichiers)
</li><li> Mauvais : "Software crashes" (Le programme plante)
</li><li> Mauvais : "Browser should work with my web site" (le navigateur devrait fonctionner avec mon site web)
</li></ul>
<p><b>Description :</b> Les détails de votre rapport d'anomalie, qui incluent :
</p>
<div class="highlight">
<p><b>Overview :</b> (vue d'ensemble) Une version plus détaillée de votre résumé.
</p>
<pre class="eval">Drag-selecting any page crashes Mac builds in the NSGetFactory function. (La sélection à l'intérieur d'une page plante les builds MAC dans la fonction NSGetFactory)
</pre>
<p><b>Steps to Reproduce :</b> (Etapes permettant la reproduction) Les actions réduites à leur plus simple expression permettant de reproduire l'anomalie. Préciser les éléments de configuration si nécessaire.
</p>
<pre class="eval">1) Ouvrir une page Web (J'ai utilisé la page d'exemple : resource:/res/samples/test0.html)

2) Faire une sélection dans la page (Placer le pointeur de la souris n'importe où dans la page, appuyer sur le bouton droit et le maintenir appuyé, puis déplacer le pointeur vers le bas de la page).
</pre>
<p><b>Actual Results :</b> (Résultat actuel) Ce qui est arrivé après les étapes décrites ci-dessus.
</p>
<pre class="eval">L'application a planté.
</pre>
<p><b>Expected Results :</b> (Résultat attendu) Ce qui aurait dû arriver en l'absence d'anomalie.
</p>
<pre class="eval">La fenêtre devrait défiler vers le bas. Le texte devrait être sélectionné. 
(Ou, au moins, l'application ne devrait pas planter)
</pre>
<p><b>Build Date &amp; Platform :</b> (Date du build et plateforme) La date et la plateforme du build dans lequel l'anmalie a été rencontrée pour la première fois.
</p>
<pre class="eval">Build 2006-08-10 sur Mac OS 10.4.3
</pre>
<p><b>Additional Builds and Platforms :</b> (Builds et plateformes additionnels) Indiquer ici si l'anomalie apparaît sur d'autres plateformes (ou navigateurs, si applicable).
</p>
<pre class="eval">N'apparaît pas sur Build 2006-08-10 sur Windows XP Home (Service Pack 2)
</pre>
<p><b>Additional Information :</b> (Informations complémentaires) Toute autre information utile.
</p><p>Pour les anomalies bloquantes :
</p>
<ul><li> Win32 : Si vous rencontrez une erreur Dr. Watson, veuillez noter le type d'erreur et le module ayant planté l'application (par exemple "Violation d'accès dans mozilla.exe").
</li><li> Mac OS X : Quand l'application plante, cliquer sur le bouton "Report" (ou "Rapport d'erreur") dans la fenêtre qui s'affiche alors, puis copier l'ensemble du texte contenu dans la zone de texte sous le message "Problem and system information" (ou "Information sur l'erreur rencontrée et le système). Insérez-le dans votre rapport d'anomalie. Il n'est pas nécessaire d'envoyer l'anomalie à Apple. Fermez simplement la fenêtre une fois son texte copié.
</li><li> Unix: Veuillez fournir une stack trace simplifiée, qui peut être générée en tapant l'instruction <tt>gdb mozilla core </tt> dans une fenêtre Shell.
</li></ul>
<pre>Date/Time:      2006-12-26 12:15:20.089 -0500
OS Version:     10.4.8 (Build 8L2127)
Report Version: 4

Command: firefox-bin
Path:    /Applications/Firefox.app/Contents/MacOS/firefox-bin
Parent:  WindowServer [71]

Version: 2.0.0.1 (2.0.0.1)

PID:    114
Thread: 0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x000000ca

Thread 0 Crashed:
0   libxpcom_core.dylib 	0x0186329b AppendUTF8toUTF16(char const*, nsAString_internal&amp;) + 31
1   libxpcom_core.dylib 	0x01822916 nsTextFormatter::smprintf_free(unsigned short*) + 3248
... (many many more lines like this) ...</pre>
</div>
<p><b>Add an attachment :</b> (Attacher un fichier) Vous pouvez attacher des fichiers utiles à votre rapport d'anomalie. Les informations de plus de 20 lignes doivent être fournies par ce biais. De même, si vous possédez un fichier HTML démontrant l'anomalie, vous devez l'attacher. Il n'est possible d'attacher qu'un seul fichier lors de la soumission du rapport d'anomalie, donc si votre démonstration en nécessite plusieurs, rouvrez le rapport que vous venez de créer pour  ajouter des fichiers attachés supplémentaires. Dans ce cas attachez tout fichier complémentaire (par exemple des images ou copies d'écran) en premier, puis, avant de le télécharger, modifiez dans le fichier HTML les adresses URL des fichiers précédemment attachés afin que votre démonstration fonctionne de manière automatique. Il est nécessaire de demander une autorisation si vous souhaitez attacher plus de 5 fichiers.
</p><p>Relisez minutieusement votre rapport d'anomalie pour en exclure toute erreur ou omission, puis cliquer sur le bouton "Commit" (valider). Votre rapport d'anomalie figurera désormais dans la base de données Bugzilla.
</p>
<div class="originaldocinfo"></div>
Revenir à cette révision