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 20,613
- All
- Agile Testing
- Bug/Defect
- Certification
- Conferences
- Database Testing
- Functional Test
- Integration Testing
- Interview
- Java Testing
- Magazine
- Manual Testing
- Methodology
- Mobile Testing
- Network Testing
- Performance Test
- Requirement
- Review
- Risk Management
- Security Testing
- Software Testing
- Standard
- System Testing
- Test Automation
- Test Case
- Test Data
- Test Environment
- Test Estimation
- Test Management
- Tester Career
- Testing News
- Test Plan
- Unit Testing
- Video Tutorial
- Web Testing
- Webinar
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 |
information is good
Thanks Jalsa
Really helpful, Thanq