Un rapport de bug est une suite d’instructions permettant de reproduire quelque chose que vous avez déjà vu. Il a réussi lorsqu’une personne qui n’était pas là parvient à provoquer la même chose du premier coup, et il a échoué lorsqu’elle doit revenir vous poser une question.

Tout ce qui suit est écrit à partir de ce seul critère. Sept choses auxquelles un rapport doit répondre, un modèle qui les demande dans l’ordre, et un vrai rapport réécrit à partir de la version qui aurait été renvoyée.

Si vous cherchez plutôt les raisons pour lesquelles les rapports échouent que les exigences elles-mêmes, l’article compagnon sur les dix erreurs courantes dans les rapports de bugs traite des habitudes qui coûtent le plus de temps.

Ce à quoi un rapport doit répondre

Le titre

Un titre est lu de nombreuses fois et ouvert une seule. Il apparaît dans la recherche, dans les points quotidiens, dans les notes de version et dans la liste que quelqu’un parcourt en choisissant sa prochaine tâche. Écrivez-le comme ce qui a échoué, plus où ou quand, plus le détail qui distingue votre cas de celui de tous les autres, chez qui cela fonctionne.

Faible
Connexion cassée
Mieux
Le bouton de connexion ne répond plus après la saisie des identifiants sur Firefox 121, Windows 11

Les étapes

Numérotez-les et partez d’un état que tout le monde peut atteindre. Non pas “allez dans mon compte”, mais la connexion, les données et chaque action dans l’ordre où vous l’avez faite. Terminez par ce que vous avez vu, pour que le lecteur sache quand il est arrivé.

1. Ouvrir https://example.com/login
2. Saisir l'e-mail test@example.com et le mot de passe TestPass123!
3. Cliquer sur Se connecter
4. Observation : le bouton affiche brièvement un état de chargement puis revient à la normale. Aucune navigation.

Donnez-les à quelqu’un qui n’a pas vu le bug. S’il vous demande quoi que ce soit, la réponse est votre étape manquante.

Comportement attendu et comportement observé

Écrivez les deux. “La connexion ne marche pas” suppose que le lecteur sait à quoi ressemble le fonctionnement normal, et il arrive que ce que vous signalez se révèle être une règle que vous ignoriez.

Attendu
L'utilisateur est redirigé vers /dashboard après une connexion réussie
Observé
Le bouton charge pendant environ une seconde, revient à son état normal, et la page ne change pas

L’environnement

Un défaut qui se produit partout et un défaut qui se produit dans un seul navigateur n’ont pas les mêmes causes, et personne ne peut dire lequel est le vôtre tant que quelqu’un n’a pas vérifié. Notez le navigateur et sa version, le système d’exploitation, l’appareil, et la taille de la fenêtre si la mise en page est en cause.

Chrome à jour n’est pas une version. Cela veut dire une chose le jour où vous l’écrivez et une autre le jour où on le lit.

Les preuves visuelles

Une copie d’écran règle sur-le-champ un problème de mise en page ou de texte. Un enregistrement vaut mieux pour tout ce qui touche au minutage, à l’animation ou à un enchaînement. Capturez la fenêtre entière plutôt que le coin cassé : la barre d’adresse, la console et le reste de la page sont souvent là où se trouve la réponse.

La console et l’onglet réseau

La première chose que demande un développeur, et la dernière que la plupart des rapports contiennent. Ouvrez les outils de développement avant de fermer l’onglet : F12, ou Cmd + Option + I sur un Mac.

Copiez le texte de l’erreur au lieu de la photographier, pour qu’on puisse la rechercher, et notez le statut et le chemin de toute requête qui a échoué.

POST https://example.com/api/auth/login 403 (Forbidden)
Error: Authentication failed: Invalid CSRF token
    at login.js:45

L’impact

La priorité n’est pas la même chose que votre urgence, et un rapport qui n’offre aucun signal est trié par celui qui crie le plus fort. Donnez les faits qui permettent à quelqu’un d’autre de décider : combien de personnes sont touchées, si de l’argent ou des données sont en jeu, s’il existe un contournement, et si cela fonctionnait avant.

“Bloque la connexion pour tous les utilisateurs de Firefox, aucun contournement, a commencé après la mise en production de cet après-midi” est plus alarmant qu’“urgent”, et a plus de chances d’être pris aujourd’hui.

Le modèle

# Rapport de bug

## Titre
[Titre clair et descriptif - ce qui est cassé et où]

## Description
[Bref aperçu du problème - 1 à 2 phrases]

## Étapes pour reproduire
1. [Première étape - à partir d'un état connu]
2. [Deuxième étape - soyez précis sur les actions]
3. [Troisième étape - indiquez les données et valeurs utilisées]
4. [Étapes supplémentaires si nécessaire]
5. [Dernière étape qui déclenche le bug]

## Comportement attendu
[Ce qui devrait se produire selon la conception ou la logique]

## Comportement observé
[Ce qui se produit réellement - décrivez les symptômes]

## Environnement
- **Navigateur :** [Nom et version du navigateur]
- **Système d'exploitation :** [Système et version]
- **Appareil :** [Ordinateur ou mobile et modèle]
- **Résolution d'écran :** [En cas de problème de mise en page]
- **Statut de l'utilisateur :** [Connecté ou non, rôle]

## Preuves visuelles
[Joignez des copies d'écran ou une vidéo]
- Copie d'écran 1 : [Description]
- Copie d'écran 2 : [Description]
- Vidéo : [Lien ou pièce jointe]

## Erreurs de console
```
[Collez les erreurs de la console du navigateur - F12 → onglet Console]
```

## Problèmes réseau
[Appels d'API en échec depuis l'onglet Réseau - F12 → Réseau]

## Impact et gravité
- **Gravité :** [Critique/Élevée/Moyenne/Faible]
- **Utilisateurs concernés :** [Tous / Utilisateurs mobiles / Un rôle précis / etc.]
- **Impact métier :** [Perte de revenus / Charge de support / etc.]
- **Contournement :** [Oui/Non - si oui, décrivez-le]

## Contexte supplémentaire
- **Fréquence :** [À chaque fois / Parfois / Rarement]
- **Depuis quand :** [À l'instant / Après une mise à jour / Depuis [date]]
- **Tickets liés :** [Liens vers des bugs similaires]
- **Autres remarques :** [Toute autre information utile]

## Liste de contrôle
- [ ] J'ai testé dans un environnement propre (navigation privée)
- [ ] J'ai indiqué les étapes pour reproduire
- [ ] J'ai fourni les détails de l'environnement
- [ ] J'ai joint des copies d'écran ou une vidéo
- [ ] J'ai regardé les erreurs dans la console
- [ ] J'ai vérifié si le problème avait déjà été signalé
Modèle de rapport de bugbug-report-template.fr.txt2,14 koTélécharger

Le même bug, signalé deux fois

La première version est celle qui arrive d’habitude. La seconde vient de la même personne, pour le même défaut, quatre minutes plus tard.

Faible
Connexion cassée. Je n'arrive pas à me connecter. Réparez ça s'il vous plaît !!!
Mieux
Le bouton de connexion ne répond plus après la saisie des identifiants sur Firefox 121, Windows 11

Le second rapport porte tout le reste : les quatre étapes ci-dessus, le comportement attendu et le comportement observé, Firefox 121 sur Windows 11 Pro en 1920x1080 dans une fenêtre privée sans extensions, deux copies d’écran et un enregistrement de quinze secondes, l’erreur CSRF de la console, et une ligne sur la gravité - tous les utilisateurs, aucun contournement, a commencé après le déploiement de 14h30.

Rien de tout cela n’a demandé de recherche. Tout était à l’écran pendant que le bug se produisait, et chacun de ces éléments a disparu au moment où l’onglet a été fermé.

D’où vient le contexte

Regardez ce que contient le second rapport. Le titre, les étapes et le comportement attendu relèvent du jugement, et ce jugement est le vôtre. L’environnement, la copie d’écran, l’erreur de console et la requête en échec ne relèvent d’aucun jugement. C’étaient des faits sur le navigateur au moment où les choses ont mal tourné, et les noter à la main veut dire quitter la page, retrouver un numéro de version et retaper une erreur.

Session Replay

Extension Chrome gratuite. Un clic sur la page qui se comporte mal capture la copie d'écran, la console et le journal réseau, et vous rend un lien à coller dans le ticket.

Installer l'extension

Elle n’écrira pas votre titre, ne décidera pas de votre gravité et ne séparera pas deux défauts en deux tickets. Ce sont les parties qui demandent quelqu’un qui était là.

Pour aller plus loin