Articles

Loading

Issue reporting best practices

Bug/Defect
Author
siddheshsawant
Date
2015-06-15 02:15
Views
18974497
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 17575674
Softwareces 2022.09.15 0 17575674
20612
CSStore is specialized in reselling Cheap Steinberg software online.
Softwareces | 2022.09.04 | Votes 0 | Views 17458446
Softwareces 2022.09.04 0 17458446
20611
Software Tester Community Website
ItSeTsQtBer | 2021.04.11 | Votes 0 | Views 18415303
ItSeTsQtBer 2021.04.11 0 18415303
20610
SoapUI Certification Course Content
Steveskok | 2021.02.08 | Votes 0 | Views 17960256
Steveskok 2021.02.08 0 17960256
20609
JavaScript Course Content
Steveskok | 2021.02.08 | Votes 0 | Views 18292116
Steveskok 2021.02.08 0 18292116
20608
Why most mobile testing is not continuous?
(TestExpert) | 2021.02.04 | Votes 0 | Views 18423521
(TestExpert) 2021.02.04 0 18423521
20607
8 Common Mistakes When Planning and Documenting Your Tests
(TestExpert) | 2021.02.04 | Votes 0 | Views 18712532
(TestExpert) 2021.02.04 0 18712532
20606
Types of Performance Testing
Jamessmith | 2021.01.17 | Votes 0 | Views 18124451
Jamessmith 2021.01.17 0 18124451
20605
How to Build E2E Test Cases (1)
tanthanh | 2020.05.28 | Votes 0 | Views 18383614
tanthanh 2020.05.28 0 18383614
20604
[White Paper] Delivering better software using Test Automation
tanthanh | 2020.05.28 | Votes 0 | Views 17767029
tanthanh 2020.05.28 0 17767029
20603
[Whitepaper] How to choose the right API Testing Solution
tanthanh | 2020.05.28 | Votes 0 | Views 17839760
tanthanh 2020.05.28 0 17839760
20602
[Whitepaper] How to choose the right API Testing Solution
tanthanh | 2020.05.28 | Votes 0 | Views 18083497
tanthanh 2020.05.28 0 18083497
20601
TestOps Introduction
VTB | 2020.03.23 | Votes 0 | Views 17698381
VTB 2020.03.23 0 17698381
20600
TestOps Implementation Case Study
VTB | 2020.03.23 | Votes 0 | Views 18777631
VTB 2020.03.23 0 18777631
20599
Selenium Automation Tester Certification Sample Exam Set 3
(TestExpert) | 2020.02.03 | Votes 0 | Views 17957552
(TestExpert) 2020.02.03 0 17957552
20598
Selenium Automation Tester Certification Sample Exam Set 2
(TestExpert) | 2020.02.03 | Votes 0 | Views 18346081
(TestExpert) 2020.02.03 0 18346081
20597
Selenium Automation Tester Certification : Sample Exam Set 1
(TestExpert) | 2020.02.03 | Votes 0 | Views 18289469
(TestExpert) 2020.02.03 0 18289469
20596
What is agile testing? why is agile testing? and what is the benefits? (20)
oishichip | 2019.12.26 | Votes 0 | Views 18488414
oishichip 2019.12.26 0 18488414
20595
Crowd Testing — Vantagens para testadores, plataformas e clientes [pt-br]
soikmd2 | 2019.12.14 | Votes 0 | Views 18095576
soikmd2 2019.12.14 0 18095576
20594
Software Testing Industry Report (Turkey) 2018-2019 (2)
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 18491898
ItSeTsQtB 2019.08.08 0 18491898
20593
How to bypass security in integration tests in ASP.Net Core
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 19276083
ItSeTsQtB 2019.08.08 0 19276083
20592
For agile testing, fail fast with test impact analysis
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 18785863
ItSeTsQtB 2019.08.08 0 18785863
20591
Career Path in Software Testing
^Software^ | 2019.07.28 | Votes 0 | Views 18493916
^Software^ 2019.07.28 0 18493916
20590
Challenges in Big Data Testing
^Software^ | 2019.07.22 | Votes 0 | Views 18345141
^Software^ 2019.07.22 0 18345141
20589
Essential Necessities In Big Data Testing
^Software^ | 2019.07.22 | Votes 0 | Views 17957309
^Software^ 2019.07.22 0 17957309
20588
5 Test Data Generation Techniques
^Software^ | 2019.07.22 | Votes 0 | Views 17995780
^Software^ 2019.07.22 0 17995780
20587
CI and CD for ETL (Extract-Transform-Load) testing.
^Software^ | 2019.07.22 | Votes 0 | Views 18175392
^Software^ 2019.07.22 0 18175392
20586
Quest for Quality Conference : 5-6 Nov 2019 at Dublin, Ireland
VTB | 2019.07.08 | Votes 0 | Views 17603447
VTB 2019.07.08 0 17603447
20585
TestBash Essentials Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 18507934
VTB 2019.07.08 0 18507934
20584
UKSTAR Conference : 11-03-2019
VTB | 2019.07.08 | Votes 0 | Views 18443672
VTB 2019.07.08 0 18443672
20583
Testing in Context Conference Australia (TiCCA) 2019
VTB | 2019.07.08 | Votes 0 | Views 18085660
VTB 2019.07.08 0 18085660
20582
European Testing Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 18048911
VTB 2019.07.08 0 18048911
20581
Automation Guild Online Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 18343670
VTB 2019.07.08 0 18343670
20580
Software Quality Days 2019 : 15 Jan 2019 (1)
VTB | 2019.07.08 | Votes 0 | Views 18155680
VTB 2019.07.08 0 18155680
20579
Skills required to become a Software Tester (1)
IT-Tester | 2019.07.08 | Votes 0 | Views 17840967
IT-Tester 2019.07.08 0 17840967
20578
Automated Unit Testing with Randoop, JWalk and µJava versus Manual JUnit Testing
IT-Tester | 2019.07.08 | Votes 0 | Views 17957936
IT-Tester 2019.07.08 0 17957936
20577
Scrum Testing Guide Book (2)
IT-Tester | 2019.06.26 | Votes 0 | Views 18060487
IT-Tester 2019.06.26 0 18060487
20576
Acceptance Testing Definition in Testing vs Scrum
IT-Tester | 2019.06.26 | Votes 0 | Views 18034149
IT-Tester 2019.06.26 0 18034149
20575
User Acceptance Testing Checklist
VTB | 2019.06.20 | Votes 0 | Views 18028808
VTB 2019.06.20 0 18028808
20574
Firewalls and Types (1)
VTB | 2018.11.14 | Votes 0 | Views 17762407
VTB 2018.11.14 0 17762407
20573
Senior Test Engineer (1)
VTB | 2018.11.05 | Votes 0 | Views 18226379
VTB 2018.11.05 0 18226379
20572
Junior Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 17905299
kornadian2 2018.11.04 0 17905299
20571
Senior Test Engineer
kornadian2 | 2018.11.04 | Votes 0 | Views 18262437
kornadian2 2018.11.04 0 18262437
20570
Programme Test Manager, 12m, Immed Start, $NEG
kornadian2 | 2018.11.04 | Votes 0 | Views 18066186
kornadian2 2018.11.04 0 18066186
20569
Junior Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 18163689
kornadian2 2018.11.04 0 18163689
20568
Dev & Test Manager
kornadian2 | 2018.11.04 | Votes 0 | Views 18340255
kornadian2 2018.11.04 0 18340255
20567
Senior Test Analyst (Performance Tester)
kornadian2 | 2018.11.04 | Votes 0 | Views 18003217
kornadian2 2018.11.04 0 18003217
20566
QA Automation Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 17951954
kornadian2 2018.11.04 0 17951954
20565
Software/Field Testing Engineer
kornadian2 | 2018.11.04 | Votes 0 | Views 18287664
kornadian2 2018.11.04 0 18287664
20564
Compliance Technician (Tester)
kornadian2 | 2018.11.04 | Votes 0 | Views 17851311
kornadian2 2018.11.04 0 17851311