How to Write a Good Bug Report

Bug Report writing is an essential and most important aspect of software testing field. Testing without any bug report is considered as an incomplete process. When a tester performs testing on any software application or any module, he gets many kinds of bugs or defects and it is important to prepare a bug report so that the bugs can be reported and then fixed by the development and designing team.

An effective bug report requires you to have knowledge of the basic format steps of writing a bug report. For writing and submitting a bug report, after completion of testing you need to consider following eleven items in your bug report

  • Bug ID
  • Bug Type
  • Module Name
  • Bug Summary
  • Bug Description
  • Prerequisite
  • Test Environment
  • Steps to Reproduce
  • Actual Result
  • Expected Result
  • What Works Vs. What Does Not Work

Let’s have a detailed look at these items:

1) Bug ID
Here you have to assign a bug id for the bug occurred in the software application or a module being tested. Bug id is assigned with the purpose to differentiate different bugs found during testing.

2) Bug Type
In bug type, you have to understand and decide which kind of bug is hindering your work, and then only you will be able to name the bug in you bug report document. Bug type is considered as a vital part of a bug report because by looking at the type of bug you can decide which bugs need to be fixed early and later. It helps in deciding the ‘priority’ and ‘severity’ of a bug.

3) Module Name
Module name suggests the type of module of a software application is being tested for any sort of bug or issues persistence. A big software application is divided into different small modules which make testing easier and faster. This ensures that each and every part of an application is being tested by the tester.

4) Bug Summary
Bug Summary means a small line which summaries the whole issue in a simple language in your bug report. Here, you can write a brief introduction about the things that are not responding or those who need further enhancement. The purpose of bug summary is to provide insight about what you are actually going to test in a particular module type.

5) Bug Description
Bug description is a detailed description of the bug that is occurring for a particular module type. Here you describe the exact action that is not performing and need to be fixed.

6) Prerequisite
In a bug report, prerequisite is a pre-condition that need to take care of before doing testing for a module. Pre-condition can be of many types say related to manual or automated actions.

7) Test Environment
Test environment is the environment to be set upped before going to perform testing or preparing for a bug report. This may include both hardware (example: tools, framework, etc.) and software (example: browsers, etc.).

8) Steps to Reproduce
This is the simple and clear way to indicate where and what things need to be take care of. In this step, you prepare exact path flow, how to test and view the bug affected module. You should clearly mention the steps to reproduce the bug.

9) Actual Result
This step indicates the actual output result you are looking for when the whole work or test is executed.

10) Expected Result
It is the expected result from which it is decided whether the test executed have been passed or failed.

11) What Works Vs. What Does Not Work
Here we actually compare our result with what works and what does not work. This last step is very effective in a bug report document because it is this step which lets you know what things are still pending to be fixed. This step makes it easier for the development team to perform accordingly.

To make it clearer, let’s discuss all these eleven points in a single Bug Report example.

This example is related to a scenario when you are trying to reset your old Password details with the new one, but couldn’t able to because new password is not being saved when clicked on the save button.

bug report

Bug ID: Bug_001
Bug Type: Functional
Module Name: Change Password
Bug Summary: “Save” button not working on Change Password page.
Bug Description: Password doesn’t get changed on clicking the “Save” button after entering a new password on Change Password page.
Prerequisite: Valid user should exist along with valid data in textboxes.
Test Environment: Internet Explorer 8.0
Steps to Reproduce:
1. Enter URL
2. Login to an application
3. Click on Change Password Link.
4. Click on “Edit” button.
5. Enter valid data in all the text boxes.
6. Click on “Save” button.
7. Logout of the application.
8. Login in the application with Username and changed password.
Actual Result: User is not able to login in an application and error displaying Invalid Password is displayed.
Expected Result: User should be able to login an application with new login credentials
What Works Vs What Does Not Work: User is not able to change their password.


A bug report is an important document and should be prepared with accuracy and effectiveness. It is the main document of communication between a tester, a developer and a manager. Each aspect should be clearly mentioned so that transparency can be maintained in the issue resolution process.

What are your views regarding a good bug report? How to do distinguish a good or bad bug report? Share your thoughts with us in the comments below.

You Might Also Like