Différence entre un défaut et un bug dans les tests?

Quelle est la différence entre un défaut et un bug?

Commentaires

  • Lire testingstandards.co.uk/bs_7925-1_online.htm pour plus dinformations
  • Il y a des bogues qui disent en fait quil manque quelque chose, ce qui signifie quil sagit dune demande de fonctionnalité, pas de bogues.
  • La réponse dépend de lobjectif pour lequel vous demandez.
  • Recherchez létymologie du mot défaut. De = pas, un. Facere = faire. Par conséquent, ne fait pas (comme prévu), ne fonctionne pas, est cassé, kaput. Alors que bogue signifie  » quelque chose dans les travaux qui entrave les performances « . À la fin de la journée, vous devrez réparer quelque chose, donc tout est académique. Jai voté pour la fermeture, ne ‘ t vous avez des bugs à corriger?!

Réponse

  • Un bogue est le résultat dune erreur de codage

  • Un défaut est un écart par rapport aux exigences

Autrement dit: Un défaut de ne signifie pas nécessairement quil y a un bogue dans le code , il peut être une fonction qui na pas été implémentée mais définie dans les exigences du logiciel.


De la page Wikipédia sur les tests de logiciels :

Tous les défauts logiciels ne sont pas causés par des erreurs de codage. Une source courante de défauts coûteux est causée par des lacunes dexigences, par exemple des exigences non reconnues, qui entraînent des erreurs domission de la part du concepteur du programme. [14] Les exigences non fonctionnelles telles que la testabilité, lévolutivité, la maintenabilité, la convivialité, les performances et la sécurité constituent une source courante de lacunes dans les exigences.

Commentaires

  • Les deux sont  » des écarts par rapport aux exigences  » comme je le vois.
  • Un défaut ne doit pas ‘ être un bogue. De plus, un bogue ne doit pas ‘ signifier qu’une exigence n’était pas remplie, et n’est donc pas ‘ un écart par rapport à l’exigence ‘
  • Vous semblez manquer le point @Martin. Oui, un bug peut être un défaut. Oui, un défaut peut être un bug. Mais ce nest pas ‘ t nécessairement toujours vrai. Simplement parce quil y a un certain chevauchement, ‘ ne signifie-t-il pas quils sont identiques! Diagramme de Venn du bogue & Défaut – > (())
  • @Dan McGrath: en gros, ce que vous avez fait ici est votre propre définition dun bug. Mais en général, il ny a ‘ aucune signification définie, ce nest ‘ quun jargon dingénierie!
  • @DanMcGrath : Votre diagramme de Venn est inutile. Cela peut signifier ({}) ou ({)} . Je suppose que vous vouliez dire la seconde.

Réponse

Citant Ilene Burnstein du livre Tests de logiciels pratiques (recommandé) qui se sépare de la définition des » Normes IEEE Collection for Software Engineering « (1994) et » IEEE Standard Glossary of Software Engineering Terminology « (norme 610.12, 1990):

Erreur

Une erreur est une erreur, une idée fausse ou un malentendu de la part dun développeur de logiciels

Dans la catégorie des développeurs, nous incluons des ingénieurs en logiciel, des programmeurs, des analystes et des testeurs. Par exemple, un développeur peut mal comprendre une notation de conception, ou un programmeur peut taper un nom de variable incorrectement.

Fautes (défauts)

Un défaut (défaut) est introduit dans le logiciel suite à une erreur. Il s’agit d’une anomalie du logiciel qui peut entraîner un mauvais comportement du logiciel, et non selon ses spécifications.

Les pannes ou défauts sont parfois appelés «bogues». Lutilisation de ce dernier terme banalise limpact des défauts sur la qualité des logiciels. Lutilisation du terme «défaut» est également associée à des artefacts logiciels tels que les exigences et les documents de conception. Les défauts survenant dans ces artefacts sont également causés par des erreurs et sont généralement détectés lors du processus de révision.

Échecs

Une défaillance est lincapacité dun système logiciel ou dun composant à exécuter ses fonctions requises dans les conditions de performances spécifiées.

Pendant lexécution dun composant logiciel ou dun système, un testeur, un développeur, ou lutilisateur constate quil ne produit pas les résultats attendus. Dans certains cas, un type particulier de mauvaise conduite indique quun certain type de défaut est présent. On peut dire que le type de mauvaise conduite est un symptôme de la faute.Un développeur / testeur expérimenté aura une base de connaissances sur les cas de pannes / symptômes / pannes (modèles de pannes décrits au chapitre 3) stockée en mémoire. Un comportement incorrect peut inclure la production de valeurs incorrectes pour les variables de sortie, une réponse incorrecte de la part dun périphérique ou une image incorrecte sur un écran. Pendant le développement, les échecs sont généralement observés par les testeurs, et les erreurs sont localisées et réparées par les développeurs.

Vous pouvez lire le chapitre complet dans Google Livres, ici .

Réponse

Il existe différents termes liés aux bogues logiciels. Extrait dun cours que jai suivi:

  • Erreur : Action humaine ou omission qui entraîne une erreur.

  • Fault : Lerreur est un logiciel défaut (étape, processus ou définition de données incorrecte) qui provoque un échec.

  • Bug : Identique à Fault.

  • Failure : Le lincapacité dun logiciel à exécuter ses fonctions requises dans les conditions de performances spécifiées.

Selon cela, il ny a aucune différence entre un défaut et un bogue. Cependant, certaines personnes soutiennent que le bogue est une erreur qui est trouvée avant de publier le logiciel, alors que le défaut est celui trouvé par le client.

Je nai pas pu résister à la publication du fameux « premier cas réel de bogue trouvé « .

texte alternatif

Commentaires

  • Enfin, quelquun qui a lu: testingstandards.co.uk/bs_7925-1_online.htm
  • Que ‘ Ce nest pas doù je lai obtenu, mais ils peuvent avoir une source commune (ou celle-ci pourrait être la source).
  • Oui, il y a de très nombreuses années, jai passé un certain temps à essayer de corriger un bogue. Je avait un scintillement gênant dans une cellule de lécran et cela navait aucun sens. Il sest finalement envolé. (Cétait à lère du texte blanc sur un écran noir, lendroit en question était assez loin à droite pour être toujours noir pendant que Jétais en train de modifier, donc je ne lai remarqué que lorsque le programme a mis du blanc derrière.)

Réponse

Oh cher.

Autrefois – le fonctionnement défectueux dun ordinateur était causé par toutes sortes de choses – y compris des rats mâchant le câblage et de vrais bugs (bestioles) entrant dans les travaux.

Le Le terme BUG est resté un terme qui signifie que quelque chose ne fonctionne pas comme prévu.

BUG doit être considéré comme un jargon signifiant un défaut.

Un défaut est un terme techniquement correct. que la chose ne fait pas comme elle le devrait.

Dans la mesure du possible, utiliser DEFAUT au lieu de BUG comporte en fait une connotation que nous reconnaissons nos échecs (nos défauts, notre manque de compréhension des exigences des utilisateurs ou des choses nous avons négligé dans limplémentation) au lieu de lhabiller comme le « bug » le plus trivial.

Utilisez DEFAUT.

Essayez de ne pas utiliser le terme BUG. Cest idiot, non pertinent, historique et banal.

Commentaires

  • Pourquoi voudriez-vous retirer de lutilisation un terme technique bien compris? Je ‘ désolé … oui, BUG est historique – mais si vous pensez que les programmeurs considèrent les bogues (génériquement par opposition à spécifiques) comme triviaux simplement parce quils ‘ sont appelés bugs ou le terme comme non pertinent en raison de ses origines, alors jai ‘ peur que ma transformation en un âge moyen grincheux soit entièrement justifiée. Oh et comme le souligne @Dan, les bogues sont des défauts mais les défauts ne sont ‘ pas nécessairement des bogues, ce qui suggère en outre que le terme a une valeur.
  • @Murph, a  » bug  » est un euphémisme pour une erreur de programmation. Inconsciemment, cela attire une sorte de gremlin sur lequel le développeur na aucun contrôle. Ce nest pas correct – cest cest une erreur et le reconnaître est un pas vers un comportement plus professionnel. (Imho bien sûr :-))
  • Euh, clairement je ne suis pas daccord (-: je sais précisément qui est responsable des bogues – erreurs de codage et de logique – que jai dans mon code. (I ‘ m également capable didentifier les échecs chez dautres personnes ‘ s code.) Tous les programmeurs que je connais savent clairement ce que le terme signifie – quils ( enfin un programmeur) et pas une sorte de gremlin a fait une erreur.
  • Lorsque vous traitez avec vos clients, vous pouvez appeler ces choses des bogues ou des défauts. Les bogues sont du jargon. Les défauts sont une reconnaissance, en dehors du jargon, que ce nest pas comme il se doit.  » Defects  » est un terme qui est, et encourage, une communication claire – en dehors de la fraternité de programmation également comme à lintérieur.(Je ne suis pas non plus daccord quil y ait une différence entre un bug et un défaut.)
  • Défauts est le terme approprié. Combien de programmes sont publiés avec des bogues et nous acceptons tous cela? Mais combien de programmes sont publiés avec des défauts? Nous naccepterions ‘ que parce que le terme implique une plus grande gravité et nous savons que ‘ est notre propre faute pour lerreur, plutôt quun bug où lon peut blâmer la météo ou lheure de la journée.

Réponse

De la norme IEEE Glossaire de la terminologie du génie logiciel, qui est cité dans le corpus de connaissances en génie logiciel KA pour les tests de logiciels et la qualité des logiciels:

bug. Voir: error; erreur.


erreur. (1) La différence entre une valeur ou une condition calculée, observée ou mesurée et la valeur ou condition vraie, spécifiée ou théoriquement correcte. Par exemple, une différence de 30 mètres entre un résultat calculé et le résultat correct. (2) Une étape, un processus ou une définition de données incorrecte. Par exemple, une instruction incorrecte dans un programme informatique. (3) Un résultat incorrect. Par exemple, un résultat calculé de 12 lorsque le résultat correct est 10. (4) Une action humaine qui produit un résultat incorrect. Par exemple, une action incorrecte de la part dun programmeur ou dun opérateur. Remarque: Bien que les quatre définitions soient couramment utilisées, une distinction attribue la définition 1 au mot «erreur», la définition 2 au mot «faute», la définition 3 au mot «échec» et la définition 4 au mot «erreur». Voir a2so: erreur dynamique; erreur fatale; erreur indigène; erreur sémantique; erreur syntaxique; erreur statique; erreur transitoire.


échec. Lincapacité dun système ou dun composant à exécuter ses fonctions requises dans le cadre dexigences de performance spécifiées. Remarque: La discipline de tolérance aux pannes fait la distinction entre une action humaine (une erreur), sa manifestation (une panne matérielle ou logicielle), le résultat de la panne (une panne) et la quantité par laquelle le résultat est incorrect (lerreur). Voir aussi: crash; échec dépendant; exception; mode de défaillance; taux déchec; échec dur; échec naissant; échec indépendant; échec aléatoire; défaillance douce; échec bloqué.


faute. (1) Un défaut dans un périphérique ou un composant matériel; par exemple, un court-circuit ou un fil cassé. (2) Une étape, un processus ou une définition de données incorrecte dans un programme informatique. Remarque: Cette définition est principalement utilisée par la discipline de tolérance aux pannes. Dans lusage courant, les termes «erreur» et «bug» sont utilisés pour exprimer cette signification. Voir aussi: défaut sensible aux données; défaut sensible au programme; défauts équivalents; masquage des défauts; faute intermittente.


Je pense que la définition de léchec est la plus pertinente. Tout commence par une erreur, que ce soit dans les exigences, la conception, la mise en œuvre ou le cas de test / procédure. Si cette erreur se manifeste dans le logiciel, elle devient une faute. Une défaillance est causée par l’existence d’un ou plus de défauts dans les logiciels.

Je ne suis cependant pas trop attaché à la définition formelle de lerreur. Je préfère de loin la définition fournie par dukeofgaming dans sa réponse , cependant, celle de cette réponse est la définition standard de lerreur IEEE.

Réponse

La réponse de Dan McGrath a bien cloué.

  • Un bug est le résultat dune erreur de codage
  • Un défaut est un écart par rapport aux exigences

Peut-être quun exemple le rendrait plus clair.

Exemple: le client voulait que le formulaire Web puisse enregistrer et fermer la fenêtre.

Scénario n ° 1: le formulaire Web a un bouton Enregistrer et un autre bouton de fermeture. Résultat: Défaut, parce que le client voulait que le bouton 1 enregistre et ferme la fenêtre. Le développeur a mal compris et créé séparément. Étant donné que les deux boutons répondaient à leurs exigences, ce nest pas un bogue, mais un défaut car il ne répondait pas aux exigences du client.

Scénario n ° 2: le formulaire Web a un bouton de fermeture de sauvegarde &, mais enregistre uniquement mais ne se ferme pas. Résultat: Punaise. Parce que le bouton ne fonctionne pas comme requis / attendu. Le développeur sait quil est supposé produire ce résultat, mais finalement cela na pas été le cas (peut-être une erreur de codage)

Je ne sais pas si cela rend les choses plus claires.

p / s: dun développeur point de vue (jétais une fois), les défauts et les bogues sont tout aussi importants. Nous allons toujours le corriger.

Nous avons même rencontré des anomalies étranges, que nous avons classées sous bogues et nous essayons continuellement de comprendre ce que est la cause et comment y remédier. Le qualifier de bogue ne le rend pas trivial par rapport aux défauts.

Commentaires

  • Comment appelons-nous des exigences défectueuses?
  • @ gnasher729 si par des exigences erronées, vous vouliez dire que les programmeurs comprenaient mal les exigences, alors je penserais que cest ‘ un défaut. Mais si vous vouliez dire des exigences erronées car lutilisateur fournissant les mauvaises exigences résultant du travail final ne résout pas le problème initial, alors cest au-delà des bogues et des défauts car il sagit dun problème avec la session de collecte des exigences plutôt quavec le développement.

Réponse

En voici une que jai faite plus tôt pour mon employeur Q-LEAP basé sur le vocabulaire ISTQB et jai également vérifié le vocabulaire IEEE. Profitez.

Bug et défaut? La même chose même si lon peut avoir des discussions interminables à ce sujet. Nous avons vraiment dautres choses à craindre, la vie est déjà assez compliquée, etc.

entrez la description de limage ici

Un exemple de comment le terme est utilisé dans la nature, extrait de « Comment Google teste le logiciel » p. 113. Ouvrez un article de « IEEE Software » et il « est utilisé de la même manière. En effet, on rencontre rarement le mot » défaut « dans la vraie vie.

La vie dun bogue

Les bogues et les rapports de bogues sont le seul artefact que tout testeur comprend. Trouver des bogues, trier les bogues, corriger les bogues et régresser les bogues sont le battement de cœur et le flux de travail pour qualité logicielle. Cest la partie des tests qui est la plus conventionnelle chez Google, mais il y a encore quelques écarts intéressants par rapport à la norme. Pour cette section, nous ignorons les bogues qui sont enregistrés pour suivre les éléments de travail et utilisons le terme pour identifier code défectueux. En tant que tel, les bogues représentent souvent le flux de travail quotidien et horaire des équipes dingénierie.

Un bogue est né. Les bogues sont trouvés et classés par tout le monde chez Google. Produit Les responsables signalent des bogues lorsquils détectent des problèmes dans les premières versions qui diffèrent de leurs spécifications / pensées. Les développeurs signalent des bogues lorsquils se rendent compte quils ont accidentellement vérifié un problème, ou trouvent un problème ailleurs dans la base de code ou lors de la mise en dogfood des produits Google. Les bogues proviennent également du terrain, de testeurs collectifs, de tests de fournisseurs externes, et sont classés par les Community Managers qui surveillent les groupes Google spécifiques au produit. De nombreuses versions internes dapplications disposent également de moyens rapides en un clic pour signaler les bogues, comme Google Maps. Et, parfois, les logiciels créent des bogues via une API.

Réponse

La différence est que le terme «bug» semble magique. Comme si un programme pouvait contenir des bogues au hasard une fois la programmation terminée. Sil y a des bogues aléatoires, cela signifie que vous ne vous êtes pas conformé aux spécifications et que votre programme est en erreur.

Un défaut signifie une erreur où le programme nest pas conforme aux spécifications. Ceci est plus grave et dit essentiellement, toute erreur est un problème énorme avec le programme et cela signifie que le programme nest pas apte à être publié.

La différence réside dans lattitude des programmeurs qui utilisent les termes. Il y a des millions de programmes qui sont publiés avec des bogues et les gens acceptent cela parce quils acceptent pour une raison quelconque quun bogue est magique et aléatoire et que chaque programme contient au moins un bogue. Cependant, un programmeur qui utilise le terme «défaut» peut devenir mal à laise de publier un programme avec un défaut car le terme implique une plus grande gravité.

Les implications de préférer un terme à lautre nous affectent quotidiennement.

Réponse

Selon Fiabilité: concepts de base et terminologie :

Un échec système se produit lorsque le service fourni ne remplit pas la fonction système, cette dernière étant ce à quoi le système est destiné. Une error est la partie de létat du système qui est susceptible dentraîner une défaillance ultérieure: une erreur affectant le service est une indication qu’une défaillance se produit ou s’est produite. La cause jugée ou supposée dune erreur est une faute .

Je comprends défaut comme un autre nom de défaut.

Bug est déroutant et peut représenter un défaut ou un échec selon le context.

Notez quil ny a aucune mention de spécification: même une spécification peut être défectueuse.

Réponse

En dehors dun bug / tâche / ticket / défaut / problème / quelle que soit linstance du système de suivi, ces mots nont pas de signification exacte et donc discuter de la différence entre eux est inutile. Lorsque vous réglez votre flux de travail, vous devez régler la terminologie et fournir des descriptions.

Dans mon environnement actuel, un « défaut » est nimporte quel élément de Jira. On dirait que Jira utilise le terme «problème». Nous lavons peut-être hérité dun système antérieur.«Bug» est un type de problème lorsque quelque chose ne fonctionne pas comme prévu et décrit dans la documentation. « Demande de fonctionnalité » quand quelque chose fonctionne comme prévu mais que lamélioration est souhaitée (cela peut être évident et important, mais si le comportement actuel est décrit, il sagit toujours dune demande de fonctionnalité). Il y a plus de types mais ces 2 sont utilisés par des personnes extérieures à léquipe de développement pour lui demander quelque chose.

Si vous choisissez des noms pour les types de problèmes, «bug» et «défaut» me ressemblent. La différence entre eux est stylistique. Langlais nétant pas ma langue maternelle, je ne peux pas vraiment en voir beaucoup et je ne sais pas si ce que je vois est correct.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *