Effective Bug Reporting
Bug reporting is an important aspect of software testing. An effective bug report communicates well with the development team and avoids confusion or miscommunication.
A good bug report should be clear and concise without missing key points. Any lack of clarity leads to misunderstanding and slows down the development process. Defect writing and reporting is one of the most important areas in testing life cycle and is one of the most neglected areas.
Good Writing is an important process of filing a bug. An important thing that a tester should keep in mind is not to use commanding tone in the report. This breaks the morale and creates an unhealthy work relationship. Use suggestive tone.
Don’t assume that developer has done mistake and you can use harsh words. It is also important before reporting to check of same bug has been reported or not.
A duplicate bug is a burden in testing cycle. Check the list of known bugs. It might happen that developers had known the issue and ignored for future release. Tools like Bugzilla can be used which automatically searches for duplicate bugs. However it is best to manually search for any duplicate bug.
The import information that a bug report must communicate is “How?” and “Where?” The report should clearly answer how the test was performed and where the defect occurred. The reader should easily reproduce the bug and find where the bug is.
Keep in mind the objective of writing the bug report is to enable the developer to visualize the problem. He/ She should understand the defect from the bug report. Remember to give all the relevant information that the developer is seeking.
Also keep in mind that a bug report would be preserved for future use and should be well written with required information. Use meaningful sentences and simple words to describe your bugs. Don’t use confusing statements that wastes the time of reviewer.
A bug report should be clear and concise. Report each bug as a separate issue. In case of multiple issues in single bug report, you can’t close it unless all the issues are resolved.
Hence it is best to split the issues into separate bugs. This ensures that each bug can be handled separately. A well written bug report helps developer to reproduce bug at their terminal. This helps them to diagnose the issue.
Important features in your bug report are -:
1) Bug number/id -: A bug number or an identification number (like swb001) makes bug reporting and referring to a bug easier. The developer can easily check if a particular has been fixed or not. It makes the whole testing and retesting smoother and easier.
2) Bug Title-: A bug title is read more often than any other part of the bug report. It should say about what comes in the bug. The bug title should be suggestive enough that reader can understand it. A clear bug title makes it clear to understand and reader can know if the bug has been reported earlier or has been fixed.
3) Priority -: Based on the severity of the bug, a priority can be set for it. I bug can be a Blocker, Critical, Major, Minor, Trivial, or a suggestion. A bug priority from P1 to P5 can be given so that the important ones are viewed first.
4) Platform/Environment -: The OS and browser configuration is necessary for a clear bug report. It is the best way to communicate on how the bug can be reproduced. Without the exact platform or environment, the application may behave differently and the bug at tester’s end may not replicate on developer’s end. So it’s best to mention clearly the environment on which bug was detected.
5) Description -: Bug description helps the developer to understand the bug. It describes the problem encountered. Poor description will create confusion and wastes time of developers and testers as well. It is necessary to communicate clearly about the effect in the description. It’s always helpful to use complete sentences. It is a good practice to separate each problem separately instead of crumbling them altogether. Don’t use terms like “I think” or “I believe”.
6) Steps to Reproduce -: A good bug report should clearly mention steps to reproduce. The steps should include actions that cause the bug. Don’t make generic statements. Be specific in the steps to follow.
A good example of well written procedure is given below-:
7) Expected and Actual Result-: A bug description is incomplete without Expected and Actual results. It is necessary to outline what is the outcome of the test and what the use should expect. The reader should know what the correct outcome of the test is. Clearly mention what happened during the test and what was the outcome.
8) Screenshot -: A picture is worth a thousand words. Take a Screenshot at the instance of failure with proper captioning to highlight the defect. Highlight unexpected error messages with light red color. This draws attention at the required area.
A good advice for writing an effective bug report is to be precise and write clearly. No wants to waste their time and effort in a poorly written report. Check the report thoroughly for any ambiguity or spelling/grammatical mistake.
Make sure you are testing on updated build and latest browser. It might happen that you are reporting bugs that are already fixed! In any case avoid non-reproducible bugs. Always verify if the bug can be reproduced or not.
Often testers feel that reporting defects is more time consuming then finding defects. But a well written bug report is worth the time spent.
The tester should focus on writing a clear readable bug report. They should keep in mind that a well written report saves time and communicates well with the development team. Writing simple and clear bug report creates a good impression and is liked by all.