How to report bug efficiently & effectively
The challenging task for a software tester is not only to find the bug but to investigate thoroughly and also report it effectively. For any bug fix to make it to production requires a very efficient and effective bug report which provide detail info about the bug and environment it is occurring, so it's easy for other team members to make a decision. The bug management tools play an important role but it's not enough to use just a tool to report bugs. I have used Jira, ActiveCollab, Mantis, asana and many more bug management tools and these tools have a great user interface but if you don’t log your bug in proper format either it will get delayed due to lack of information or get rejected for the same reason.
Here are few things I have learned which can make your bug report an efficient one
Use simple but detailed bug title:
The goal of a bug report is to inform engineering team about the failure and to help in reproducing it e.g. Let's say login feature is broken on a website on IE11 browser bug report title could be "[Log in] Members are not able to log in on IE11" instead of "Login doesn't work". It is easier to make a decision and quickly assign priorities this helps to resolve bugs faster.
One bug one ticket:
As testers, I have been in situations where I found multiple bugs on the same page and It would make my work easier reporting multiple bugs in one report.
Step to reproduce:
1) Visit www.example.com
2) Click on Login link
Actual result:
1) Forgot password link is not working
2) Username field accepts more than 30 characters
3) Submit button display error in console
Instead, my experience has been that reporting one bug in a single report is much easier to maintain, manage and faster to be fixed.
Create a bug reporting format:
Bug management process sounds awesome when you are the only tester working on a project and things start becoming difficult when the team starts growing or bugs start flowing from other departments such as development, customer support etc.; everyone starts logging bugs in their own format bug management process gets hampered. This can be solved by following a standard bug reporting format, either you can choose one from Google or create your own.
1) Title
2) Step to reproduce
3) Actual Result
4) Expected result
5) Attachments
There are other important details such as severity, environment, additional info, etc.; which makes bug more effective.
List down steps to reproduce, expected and the actual result:
Along the way you will find an alien bug which is affecting a specific browser or operating system or build which developers can’t reproduce on their systems. Documenting steps to reproduce will help save time wasted in an unnecessary investigation. When a team works on particular projects for for a long time, sometimes we take for granted that team must be aware of the entire functionality and ignore mentioning the actual and the expected result, but it does make a huge difference and benefits in resolving bugs faster or it might result in loop conversation between testers and a developer.
Be aware of existing bugs:
Some of the tools have built in feature, e.g. Bugzilla when you type in a title, it will fetch similar titled bugs. So you can update the same bug with more information you have found. This saves the time in reporting and managing duplicate bugs. Find ways to integrate tools to notify team members, we have integrated our bug management system with slack which displays notifications with bug title. I'm not saying it's not a good practice to report duplicate bugs, but keep yourself aware of bugs reported by other team members which save time in bug reviews and bug management.
Use screenshots and video to support your bug:
Well, we are not perfect as the system which is under test. Sometimes, as a tester, I report bugs with incorrect information or bug was a temporary glitch in the system, attaching a well-annotated screenshot or video saved me from getting disappointed. Video can be very explanatory, you can use tools like Jing to record video (It can also be used for screenshots). Keeping browser address bar visible, even better with console output displayed. Sometimes bugs are temporary and cannot be reproduced even with specific steps and these details help to debug bugs