Jag undrar, vad gäller skillnaden mellan ett fel och en defekt vid testning av programvaruutveckling?
Kommentarer
- @ user246 har det. Det finns också frågan. Samma sak igen.
- Detta har ställts tidigare, så jag ville dela den här frågan. programmers.stackexchange.com/questions/37029/… Det finns också länkade frågor (till höger om detta fråga) som liknar varandra. Detta kan inte flaggas som ett duplikat eftersom det ’ inte finns på SQA SE.
- Jag tror att vi har tillräckligt med svar på denna triviala fråga, så jag ’ kommer att skydda det nu.
- @ user246 Lol vilken nedlåtande kommentar.
Svar
Samma sak. Utan tvekan finns det företag som använder dessa termer för att betyda olika saker, men deras användning är inte universell. Om någon ställer dig den frågan i en intervju borde du kunna säga: ”Där jag jobbar är termerna utbytbara. Menar de något annat här?”
Kommentarer
- Alla är överens om definitionen av bug / defekt som är något oväntat beteende hos produkten. För mig något som hittades i utvecklingsfasen bör det kallas ” BUG ” men om detta fel upptäcktes i den levande produkten bör det vara kallas ” DEFEKT ”. Kort BUGGY-funktion, DEFEKT produkt.
Svar
Bugg, Defekt, Problem, Fel, Incident, Ticket är alla samma och används omväxlande i organisationer. Människor kan diskutera och säga att de håller med eller håller inte med och citerar referenser, men den grundläggande verkligheten är, det spelar ingen roll vad du kallar det så länge det spåras, refereras vid behov och i slutändan fixas.
Min erfarenhet visar nedan: I Bugzila ser du fältet ”Bug-id”, i QC / HP ALM hittar du fältet ”Defekt-ID” på det interna företagsspecifika övervaknings- / supportverktyget du ser främst ”Incident No :.”
Kommentarer
- Fel och defekter är desamma. Problem, incident och biljett tenderar att betyda en oro som tas upp, utan att det nödvändigtvis finns ett problem orsakat av en bugg eller defekt. Till exempel kan ett problem visa sig bero på användarfel. Eller det kan vara en funktionsförfrågan. Det ’ är sant att vissa ” bug tracking ” programvara (Bugzilla) spårar alla slags av problem förutom buggar, och kan till och med referera till dem alla i allmänhet som ” buggar ”, men att ’ är inte standardanvändning och beror troligen på expansion utöver vad programvaran ursprungligen var avsedd för.
- @LarsH Även om det är tekniskt korrekt, kallas incidenter i verkligheten vanligtvis ” buggar ”, ” defekter ” eller ” incidenter ”, vad företagskulturen dikterar. Bugs / defekter / incidenter som stängs av en anledning ” av design ” är tekniskt sett inte buggar / defekter, fortfarande kallar alla dem buggar / defekter / incidenter, så det är rätt namn för att kalla dem.
- @Peter: Jag håller i allmänhet med dig, även om jag inte skulle ’ t gå så långt med ” alla ” eller ” rätt namn för att kalla dem. ” Jag ’ har gjort mjukvaruutveckling i fyra olika företag / organisationer (och olika grupper med olika kulturer inom dessa organisationer), och det finns många människor som vann ’ t kalla ett problem ett fel såvida det inte ’ orsakas av att programvara / hårdvara inte fungerar som specificerat. Speciellt utvecklare vars rykte står på spel när ett problem påstås vara ett ” -fel ” i sin programvara. Ja, vi vet i allmänhet vad du menar och gör ’ inte krångel om det, men det gör inte ’ det rätt.
- @LarsH I de företag jag har arbetat i har incidenter skiljt sig tydligt från fel eller defekter. En incident har använts för att beskriva saker som ” servern har slut på hårddiskutrymme ” eller ” en fiberlinje klipptes. ” Förutom naturligtvis säkerhetsincidenter. Jag ’ är inte säker på att det är rättvist att universellt säga att incident motsvarar fel. Fel och defekter, ja, men IMO, incident sträcker det.
Svar
Otaliga definitioner som skiljer mellan ”bug” och ”defect” finns. De håller inte med varandra. De innehåller direkta motsatser (Bug är A, Defekt är B kontra Bug är B, Defekt är A). Såvitt jag vet är inte en enda av dessa definitioner i större utsträckning. Alla skillnader som görs mellan villkoren kommer att vara specifika för ditt företag, kanske till och med specifikt för din grupp, i din avdelning, i ditt företag.
Det finns vissa som hävdar att det finns en tydlig skillnad, som den här :
- Ett fel är resultatet av ett kodfel
- En defekt är en avvikelse från kraven
eller som en :
- Ett fel får ett problem vid tidpunkten för testningen, där som en defekt är ett problem som får kunden i produktionstid.
eller en annan :
En defekt är en effekt, vanligtvis orsakad av mänskligt fel, av att skriva rätt kod. […] Ett fel är inte ett fel i kodningen. Ett fel är systemet som gör något som inte är fel i sig … men det var inte målmedvetet utformat och du såg det inte komma.
eller från en kommentar till det här svaret:
”Bug” antyder att problemet, efter att ha märkt, är (eller tros vara) trivialt att åtgärda . ”Defekt” (som i ”defekt av design”) antyder att det inte är det, också att det är en följd av ofullkomlig specifikation eller design.
eller från ett annat svar i den här tråden:
[…] om specifikationen säger att programvaran ska göra något och programvaran gör det är det inte ett Men om det gör programvaran olämplig för dess avsedda användning är den ”en defekt.
Ännu fler definitioner finns i andra svar på den här tråden .
Dessa definitioner är helt i strid med varandra. De är också i strid med hur jag ser att termerna används i verkligheten. Det finns ingen konsekvent skillnad mellan de termer som används i några betydande delar av programvaruindustrin.
Den enda något allmänt använda definitionen är den som inte gör någon skillnad mellan fel och defekt. Utan ytterligare sammanhang för din arbetsmiljö och deras specialiserade användning av termerna betyder både ”defekt” och ”fel” bara: ”en utfärda någon som stött på, eller eventuellt kan stöta på, när man använder programvaran ”. Men som man kan se från de olika andra svaren i denna tråd är det inte tillräckligt utbrett för att kallas” definitionen ”.
Kommentarer
- Jag ’ d går lite längre och föreslår att det finns en skillnad i daglig användning. ” Bugg ” föreslår att problemet, när det en gång märkt, är (eller tros vara) trivialt att åtgärda. ” Defekt ” (som i ” defekt av design ”) antyder att det inte är det, också att det är en följd av ofullkomlig specifikation eller design. Jämför överlämnandet av en ny byggnad där ” snags ” (buggar) rapporteras till huvudentreprenören som ska fixas utan extra kostnad ( eller inte, om de visar sig vara den oönskade men korrekta leveransen av vad kontraktet och de angivna planerna). Jag håller med om att all hård klassificering kommer att vara av lokal räckvidd.
- @ nigel222 Inget brott avsett, men jag ’ kommer att boka det under definition 4, som åter är odds med de tre andra exemplen.
Svar
Ordet bug kommer från det allra första datorfelet :
Verkliga buggar bryter inte datorer längre och övertid denna analogi startar är mindre och mindre vettigt. Därför har jag ett uppdrag att bli av med termen bug och alltid använda defekt för programvarurelaterad fråga och det borde du också göra 🙂
Kvalitet är ett personperspektiv, alla har en annan åsikt. Jag tror att detta är detsamma med att något är en defekt eller inte. Om du tror att den är trasig är den trasig enligt Seth Godin .
Om du är intresserad av klassificering av defekter skulle jag föreslå att ta en titt på klassificeringsprocessen som används i zero-defect policy .
Kommentarer
- Detta kan självklart ’ t vara där ordet ” bug ” från.Om ordet ” bug ” inte ’ t redan hänvisar till ett problem eller en defekt, varför skulle de säga ” Första faktiska fallet med fel hittades. ”?
- Kanske såg de för sig att ett fel skulle bryta systemet? Det här är dock historien jag också lärde mig i skolan. Nämns också på Wikipedia, så det måste vara sant 😉 sv.wikipedia.org/wiki/Software_bug
- Wikipedia-sidan pekar till många tidigare användningar av ordet ” bug ”.
- Ja det gör det, men de tidigare användningarna är inte dator- / programvarufel. De är mer referenser till hårdvara / elingenjör. Till exempel Thomas Edison-exemplet som nämns på Wikipedia-sidan. Artikeln hänvisar också till historien som Niels van Reijmersdal har skrivit !!!
Svar
Efter att ha använt många olika problemspårningsverktyg är det vanligt att alla dessa termer ”defekt”, ”bug”, ”issue” etc … helt enkelt betraktas som samma sak och du kommer att upptäcka att de som standard definierar alla en av dem.
Så baserat på detta föreslår jag att majoriteten av människorna anser att de också är samma sak.
Svar
I utvecklingstest kanske ingen verklig skillnad om du håller dig att jämföra systemet med specifikationen. Många saker märks och loggas dock som defekter som faktiskt inte är avvikelser från utvecklarens avsikter.
Termen bug har använts länge. Det betyder verkligen vad du än märker om vad du har byggt det är inte ”t” rätt än. Edison berömd definierar termen i en bokstav från 1878
Obs: utgrävningen i Grace Hopper på den referensen irriterar mig. Hennes loggpost visade tydligt att hon var bekant med den befintliga termen.
Svar
Skillnaden mellan fel och defekt kan vara vad du gör det. Det beror helt på hur du definierar båda termerna. Definitioner och förståelse av terminologier skiljer sig från organisationer till team till individer. Överallt kommer du att se att människor har en annan förståelse för en term och definierar dem enligt deras förståelse.
Ett fel och en defekt kan betyda exakt samma sak för en person medan någon annan person kan definiera det annorlunda.
Vissa människor definierar bug och defekt enligt nedan,
BUG:
- Ett fel är resultatet av ett kodfel.
- En mänsklig handling som ger ett felaktigt resultat.
- Avvikelse från det förväntade resultatet .
- Ett programvarufel är ett fel, fel, misstag, fel eller fel i ett datorprogram som förhindrar att det fungerar som avsett eller ger ett felaktigt resultat.
Defekt:
- En defekt är en avvikelse från kraven.
- Problem i algoritm som leder till misslyckande.
- En defekt är för något som normalt fungerar, men det har något som inte är speciellt.
- En defekt införs in i programvaran som ett resultat av ett fel. Det är en avvikelse i programvaran som kan få den att fungera felaktigt och inte enligt dess specifikation.
Svar
Vad är skillnaden mellan bug och defekt ?
-
Ett fel får ett problem vid tidpunkten för testet, där som en defekt är ett problem som får kunden i produktionsmiljön.
-
Ett fel är ett fel i ett program som får det att fungera plötsligt. Fel hittas vanligtvis antingen under enhetstester utförda av utvecklare av testning av moduler.
-
En defekt hittas när applikationen inte överensstämmer med kravspecifikationen. En defekt kan också hittas när klienten eller användaren testar.
Svar
Enligt ISTQB
” defekt och fel ”båda är samma när en programmerare skriver code
för ett krav på grund av missförstånd eller fel logik som de skriver fel kod för det kravet på grund av felet i koden det leder till defekt eller fel.
”
Till exempel
”: Vi utvecklar modul för att beräkna ränta på det angivna beloppet men utvecklaren skriver fel kod för att beräkna räntebeloppet på grund av felet i koden vi får fel (kanske mindre eller mer) räntebelopp, här får vi inte förväntat resultat mot kravet, så det här är en bugg eller defekt.
Svar
Jag håller inte med de svar som tyder på att en bugg och defekt är samma sak.
I programvarutestning är ett fel ett felaktigt beteende som härrör från en kodfel. En kodfel är ett fel i koden som gör att den inte uppfyller motsvarande specifikation korrekt.
Som jämförelse är en defekt (används utan kvalifikation) en avvikelse från specifikation eller krav. En specifikation som anges felaktigt är en defekt – och kod som korrekt uppfyller den angivna specifikationen skulle också betraktas som felfri. Ett krav som inte uppfylls av någon kod anses också vara en defekt (tills kod skrivs som uppfyller kravet korrekt) – obefintlig kod kan inte uppvisa ett fel.
Naturligtvis kan ett fel associeras med en defekt, eftersom förekomsten av ett fel kan orsaka att koden avviker från dess krav. Men det betyder inte att de är samma sak.
Svar
För den som säger att det inte finns någon skillnad, jag ”d ställer dem den här frågan:” Säg att en viss kod gör att en produkt inte fungerar bra. Det finns verkligen ett fel i denna kod. Koden är inte nödvändig, så det har bara kommenterats. Har felet i applikationen hittats och rättats? Finns det fortfarande en defekt i applikationen? ”
Jag tror att de flesta kommer att svara” nej ” och ja”. Vi har fortfarande inte hittat problemet i den koden eller fixat det. Men vi har hindrat det från att orsaka en defekt.
Ofta är det ingen skillnad. De flesta fel orsakas av fel. De flesta fel orsakar upptäcker.
Ett fel är ett fel i en kod. Det får inte ha några konsekvenser, till exempel kan det bara utlösa i fall som inte förekommer i någon produkt som använder den koden.
En defekt är något fel som orsakar oväntat beteende eller gör något mindre lämpligt för dess faktiska användning.
En defekt orsakas ofta av ett fel men inte alltid. Om specifikationen till exempel säger att programvara ska göra något och programvaran gör det, är det inte ett fel. Men om det gör programvaran olämplig för den avsedda användningen är den en defekt.
Ett fel kan orsaka en defekt men inte alltid. Till exempel, om specifikationen säger att ett visst felfall ska hanteras på ett visst sätt och koden inte gör det är det ett fel i den koden. Men om det kan visas att det projekt som innehåller den koden inte kan producera det ärendet är det inte en defekt i det projektet.
När du talar specifikt om utveckling av kod som kommer att används i olika projekt är det ingen skillnad. Alla fel måste betraktas som en defekt.
Svar
Den enda skillnaden är publiken du vänder dig till. Testare och utvecklare
Defekt: Defekt är ett fel i kodning eller logik som orsakar att ett program fungerar felaktigt eller ger felaktiga / oväntade resultat.
Fel: Om den defekten som accepteras av programmeraren är kallad bugg.