Articles

Loading

Issue reporting best practices

Bug/Defect
Author
siddheshsawant
Date
2015-06-15 02:15
Views
12027190
Issue reporting best practices

As soon as you run into a problem in the software, create a new issue request
In a well-written report, Explain how to reproduce the problem;

Analyze the error so you can describe it in a minimum number of steps;
Include all the steps; 
Make the report easy to understand;
Keep your tone neutral and non-antagonistic;
Keep it simple: one bug per report; and
If a sample test file is essential to reproducing a problem, reference it and 
attach it.

As was already stated, there are many ways of how a request can end “in the trash” instead of being addressed. To raise the chance of an issue being fixed, there are couple 
rules which should be followed. 

Rule #1 – Write good summary
This one-line description of the problem is the most important part of the report.
The project manager will use it in when reviewing the list of bugs that have not 
been fixed.
Executives will read it when reviewing the list of bugs that will not be fixed. 
They might only spend additional time on bugs with "interesting" summaries.
The ideal summary gives the reader enough information to help decide whether 
to ask for more information. It should include:
o A brief description that is specific enough that the reader can visualize 
the failure;
o A brief indication of the limits or dependencies of the bug (how narrow 
or broad are the circumstances involved in this bug?); and
o Some other indication of the severity (not a rating, but helping the 
reader envision the consequences of the bug).


Rule #2 – Explain how to reproduce the problem
First, describe the problem. What is the bug? Do not rely on the summary to do 
this.
Next, go through the steps that you used to recreate this bug.
o Start from a known place (e.g. boot the program);
o Then describe each step until you hit the bug;
o NUMBER THE STEPS. Take it one step at a time.
If anything interesting happens along the way,  describe it. (One must give 
people directions to a bug. Especially in long reports, people need landmarks.)
Describe the erroneous behavior and, if necessary, explain what should have 
happened. (Why is this a bug? Be clear.)
List the environmental variables (configuration, etc.) that are not covered 
elsewhere in the bug tracking form.
If the reader may have trouble reproducing the bug (special circumstances are 
required), be clear about these circumstances.
Keep the description focused:
o The first part of the description should be the shortest step-by-step 
statement of how to get to the problem.
Add "Notes" after the description, if there are any. Typical notes include:
o Comment that the bug will not show up if step X is executed between 
step Y and step Z.
o Explain the reasoning for running this test.
o Explain why this is an interesting bug.
o Describe other variations of the bug.


Rule #3 – If two failures are visible, write two reports
Combining failures on one report creates problems:
The summary description is  typically vague. Words like "fails" or "doesn't 
work" are used instead of describing the failure more vividly. This weakens the 
impact of the summary.
The detailed report is typically lengthened. Bug reports should not read 
something like the following: “Do this until that happens, in which case do not 
do this until the first thing is completed and then the test case of the second 
part must also be complete, and sometimes you may see this,  but if not then 
that….”
Even if the detailed report is rationally organized, it is longer (there are two 
failures and two sets of conditions, even if they are related) and; therefore, 
more intimidating.
Often, one bug gets fixed, but not the other.
When reporting related problems on separate reports, it is a courtesy to crossreference them.

Rule #4 – Eliminate unnecessary steps
Sometimes, it is not immediately obvious which steps can be dropped from a long 
sequence of steps in a bug. Look for critical steps. Sometimes, the first symptoms of an 
error are subtle.
A list now exists of all the steps that were taken to show the error. Now, the aim is to 
shorten the list. As each step is executed, any hints of errors must be examined. The 
following factors should be examined:
Error messages (i.e. A message appeared 10 minutes ago. The program did not 
fully recover from the error and the problem evident now is caused by the poor 
recovery.)
Delays or unexpectedly fast responses.
Display oddities, such as flashes, repainted screens, a cursor that jumps back 
and forth, multiple cursors, misaligned text, slightly distorted graphics, doubled 
characters, omitted characters, or display droppings (pixels that are still 
colored even though the character or graphic that contained them was erased 
or moved).
Sometimes, the first indicator that the system is working differently is that it 
sounds a little different than normal.
An in-use light or other indicator shows that a device is in use when nothing is 
being sent to it (or a light that is off when it should not be).
Debug messages: the debug monitor should be turned on (if it exists on the 
system) and should be monitored if or when a message is sent to it.
If, what seems like a critical step has been encountered, everything else from the bug 
report should be eliminated. One must now go directly from that step to the last one (or 
few) that shows the bug. If this does not work, individual steps or small groups of steps 
can be removed.

Rule #5 – Variations after the main report 
The failure may look different under slightly different circumstances. For example:
The timing changes if  additional two sub-tasks are performed before the final 
reproduction step is hit.
The failure will not show up at all or is much less serious if something else is 
put at a specific place on the screen
The printer prints different characters (instead of the characters described) if 
the file is made a few bytes longer
This is all useful information for the programmer and it should be included. But to 
make the report clear:
It should start with a simple, step-by-step description of the shortest series of 
steps needed to produce the failure.
The failure must be identified. (Descriptions of how it looks like or what impact 
it will have.)
A section should be added that states "ADDITIONAL CONDITIONS" that 
describes, one by one, the additional variations and the effect on the observed 
failure.
 
Overcoming objections
Programmers, as humans, operate under time constraints and competing priorities. For example, outside of the 12-hour workday, some programmers are faced with fatigue and apathy, instead of fixing bugs. Some things will often motivate programmers to fix the bug 
The situation with the bug is very poor. 
The complexity piques the programmer's curiosity. 
It affects many people. 
Arriving at the fix is trivial.
It has embarrassed the company, or a similar bug embarrassed a competitor. 
One of the bug`s cousins embarrassed the company or a competitor.
Management wishes for the bug to be fixed. 
The programmer is susceptible to flattery from the person with the requests, trusts the person, owes a favor, or accepts bribes.


 Programmers avoid spending time on a bug due to the following reasons: 
The programmer cannot replicate the defect.
Strange and complex sets of steps are required to induce the failure.
Not enough information is known and it will take a lot of work to solve them.
The programmer does not understand the report.
The solution is unrealistic (e.g. "corner case").
It will take a lot of work to fix the defect.
A fix will introduce too much risk into the code.
There will be no perceived customer impact.
The fix is unimportant (nobody cares about such a minor error or unused 
feature).

It is not a bug, it is a feature.
Management does not care about bugs of this type.
The programmer does not like or trust the person with the requests, or the 
customer who is complaining about the bug
Total Reply 3

  • 2014-08-15 12:59

    information is good


  • 2014-08-15 15:36

    Thanks Jalsa


  • 2014-08-16 21:52

    Really helpful, Thanq


Total 20,613
Number Title Author Date Votes Views
20613
SileniusStor is specialized in reselling Cheap Aquafadas software online.
Softwareces | 2022.09.15 | Votes 0 | Views 10682512
Softwareces 2022.09.15 0 10682512
20612
CSStore is specialized in reselling Cheap Steinberg software online.
Softwareces | 2022.09.04 | Votes 0 | Views 10563843
Softwareces 2022.09.04 0 10563843
20611
Software Tester Community Website
ItSeTsQtBer | 2021.04.11 | Votes 0 | Views 11495366
ItSeTsQtBer 2021.04.11 0 11495366
20610
SoapUI Certification Course Content
Steveskok | 2021.02.08 | Votes 0 | Views 11269731
Steveskok 2021.02.08 0 11269731
20609
JavaScript Course Content
Steveskok | 2021.02.08 | Votes 0 | Views 11301778
Steveskok 2021.02.08 0 11301778
20608
Why most mobile testing is not continuous?
(TestExpert) | 2021.02.04 | Votes 0 | Views 11866696
(TestExpert) 2021.02.04 0 11866696
20607
8 Common Mistakes When Planning and Documenting Your Tests
(TestExpert) | 2021.02.04 | Votes 0 | Views 11505418
(TestExpert) 2021.02.04 0 11505418
20606
Types of Performance Testing
Jamessmith | 2021.01.17 | Votes 0 | Views 11228348
Jamessmith 2021.01.17 0 11228348
20605
How to Build E2E Test Cases (1)
tanthanh | 2020.05.28 | Votes 0 | Views 11524308
tanthanh 2020.05.28 0 11524308
20604
[White Paper] Delivering better software using Test Automation
tanthanh | 2020.05.28 | Votes 0 | Views 10739438
tanthanh 2020.05.28 0 10739438
20603
[Whitepaper] How to choose the right API Testing Solution
tanthanh | 2020.05.28 | Votes 0 | Views 11234984
tanthanh 2020.05.28 0 11234984
20602
[Whitepaper] How to choose the right API Testing Solution
tanthanh | 2020.05.28 | Votes 0 | Views 11199495
tanthanh 2020.05.28 0 11199495
20601
TestOps Introduction
VTB | 2020.03.23 | Votes 0 | Views 11023265
VTB 2020.03.23 0 11023265
20600
TestOps Implementation Case Study
VTB | 2020.03.23 | Votes 0 | Views 11859758
VTB 2020.03.23 0 11859758
20599
Selenium Automation Tester Certification Sample Exam Set 3
(TestExpert) | 2020.02.03 | Votes 0 | Views 11252454
(TestExpert) 2020.02.03 0 11252454
20598
Selenium Automation Tester Certification Sample Exam Set 2
(TestExpert) | 2020.02.03 | Votes 0 | Views 11389153
(TestExpert) 2020.02.03 0 11389153
20597
Selenium Automation Tester Certification : Sample Exam Set 1
(TestExpert) | 2020.02.03 | Votes 0 | Views 10993895
(TestExpert) 2020.02.03 0 10993895
20596
What is agile testing? why is agile testing? and what is the benefits? (20)
oishichip | 2019.12.26 | Votes 0 | Views 11737807
oishichip 2019.12.26 0 11737807
20595
Crowd Testing — Vantagens para testadores, plataformas e clientes [pt-br]
soikmd2 | 2019.12.14 | Votes 0 | Views 11386922
soikmd2 2019.12.14 0 11386922
20594
Software Testing Industry Report (Turkey) 2018-2019 (2)
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 11672015
ItSeTsQtB 2019.08.08 0 11672015
20593
How to bypass security in integration tests in ASP.Net Core
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 12000012
ItSeTsQtB 2019.08.08 0 12000012
20592
For agile testing, fail fast with test impact analysis
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 11457423
ItSeTsQtB 2019.08.08 0 11457423
20591
Career Path in Software Testing
^Software^ | 2019.07.28 | Votes 0 | Views 11638261
^Software^ 2019.07.28 0 11638261
20590
Challenges in Big Data Testing
^Software^ | 2019.07.22 | Votes 0 | Views 11461698
^Software^ 2019.07.22 0 11461698
20589
Essential Necessities In Big Data Testing
^Software^ | 2019.07.22 | Votes 0 | Views 11334037
^Software^ 2019.07.22 0 11334037
20588
5 Test Data Generation Techniques
^Software^ | 2019.07.22 | Votes 0 | Views 11742698
^Software^ 2019.07.22 0 11742698
20587
CI and CD for ETL (Extract-Transform-Load) testing.
^Software^ | 2019.07.22 | Votes 0 | Views 11384026
^Software^ 2019.07.22 0 11384026
20586
Quest for Quality Conference : 5-6 Nov 2019 at Dublin, Ireland
VTB | 2019.07.08 | Votes 0 | Views 11038869
VTB 2019.07.08 0 11038869
20585
TestBash Essentials Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 11416109
VTB 2019.07.08 0 11416109
20584
UKSTAR Conference : 11-03-2019
VTB | 2019.07.08 | Votes 0 | Views 11234966
VTB 2019.07.08 0 11234966
20583
Testing in Context Conference Australia (TiCCA) 2019
VTB | 2019.07.08 | Votes 0 | Views 11400908
VTB 2019.07.08 0 11400908
20582
European Testing Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 11461892
VTB 2019.07.08 0 11461892
20581
Automation Guild Online Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 11655975
VTB 2019.07.08 0 11655975
20580
Software Quality Days 2019 : 15 Jan 2019 (1)
VTB | 2019.07.08 | Votes 0 | Views 11490420
VTB 2019.07.08 0 11490420
20579
Skills required to become a Software Tester (1)
IT-Tester | 2019.07.08 | Votes 0 | Views 11051201
IT-Tester 2019.07.08 0 11051201
20578
Automated Unit Testing with Randoop, JWalk and µJava versus Manual JUnit Testing
IT-Tester | 2019.07.08 | Votes 0 | Views 11094582
IT-Tester 2019.07.08 0 11094582
20577
Scrum Testing Guide Book (2)
IT-Tester | 2019.06.26 | Votes 0 | Views 10927549
IT-Tester 2019.06.26 0 10927549
20576
Acceptance Testing Definition in Testing vs Scrum
IT-Tester | 2019.06.26 | Votes 0 | Views 11047703
IT-Tester 2019.06.26 0 11047703
20575
User Acceptance Testing Checklist
VTB | 2019.06.20 | Votes 0 | Views 11134913
VTB 2019.06.20 0 11134913
20574
Firewalls and Types (1)
VTB | 2018.11.14 | Votes 0 | Views 11005274
VTB 2018.11.14 0 11005274
20573
Senior Test Engineer (1)
VTB | 2018.11.05 | Votes 0 | Views 11483244
VTB 2018.11.05 0 11483244
20572
Junior Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 11391606
kornadian2 2018.11.04 0 11391606
20571
Senior Test Engineer
kornadian2 | 2018.11.04 | Votes 0 | Views 11461655
kornadian2 2018.11.04 0 11461655
20570
Programme Test Manager, 12m, Immed Start, $NEG
kornadian2 | 2018.11.04 | Votes 0 | Views 11479502
kornadian2 2018.11.04 0 11479502
20569
Junior Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 11376374
kornadian2 2018.11.04 0 11376374
20568
Dev & Test Manager
kornadian2 | 2018.11.04 | Votes 0 | Views 11234839
kornadian2 2018.11.04 0 11234839
20567
Senior Test Analyst (Performance Tester)
kornadian2 | 2018.11.04 | Votes 0 | Views 11227891
kornadian2 2018.11.04 0 11227891
20566
QA Automation Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 11258041
kornadian2 2018.11.04 0 11258041
20565
Software/Field Testing Engineer
kornadian2 | 2018.11.04 | Votes 0 | Views 11087387
kornadian2 2018.11.04 0 11087387
20564
Compliance Technician (Tester)
kornadian2 | 2018.11.04 | Votes 0 | Views 11355732
kornadian2 2018.11.04 0 11355732