What is Defect Life Cycle in Testing

A defect life cycle is a process in which a defect goes through various phases during its entire lifetime. It starts when a defect is found and ends when a defect is closed, after ensuring it’s not reproduced. A defect life cycle is related to the bug found during testing.

As we have seen, that a defect discovered in one phase may be identified in some other phase. It can be fixed in some other phases of software development.

A defect may run parallel to the software development phases.

A defect is identified by its states and status. Therefore we shall see all the states and statuses that are possible for a defect. Below are some of the states of a defect:

New: When we say New it means, the defect is encountered for the first time and is logged for the first time. This defect has to be studied to find the level of severity; it has. Because nothing similar has happened yet, therefore, the defect is just assigned as New.

Assigned: Assigned is also a status given to the defect. It means that the defect is assigned its status whatever it. It is also posted, which means, it is transferred to the developer team to be identified and measure the degree of its' severity. However, Assigned the status of the defect.

Open: Open is the status of the defect, signifying that the defect has reached the concerned team and the developers or the testers have started to work on it. A defect in Open does not mean, that the defect is being operated. But it crucially means that the defect is under observation and work also.

Fixed: Fixed is a status when the developer or the tester has confirmed that the defect has been fixed. All the changes which are to be made and saved and updated.

Pending Retest: This status is assigned to the defect when the defect has been fixed, and necessary code changes have been made. But the fixed part has not been yet tested by the concerned tester for its validity. This is important, because even when a fix may work fine. The added code may not be genuine to the software.

Verified: When the defect is re-tested and the bugs of the defect are found fixed, then the status of the defect is assigned as Verified.

Reopen: Even after the verification. if there is any defect or bugs left in the software, the defect is assigned the status as Open. It means the defect will be again sent to the developer or the testing team, to get it inspected. The defect life cycle again starts here from the beginning.

Closed: After re-verification, if there are no bugs left, then the status is updated to Closed.

Duplicate: The status Duplicate is assigned to the defect when the same defect is encountered again. This status is important because when the defect is encountered again, it means, that the necessary steps which were taken to fix the defect, did not work and something new is required.

Rejected: This is a status, imposed on the defect if the developer or the tester feels that the defect is not a genuine defect, that is, something which cannot be termed as a pure defect.

Deferred: This status is assigned to the defect if the defect will not be fixed in the current phase of testing or the current release of the software. Deferred, means that the defect will be tested and checked not now but on the later or the upcoming release of the software.

Not A Bug: There can be a defect in the software, which may not be termed as a bug, as it may if it does not hamper the functionality of the software. In that case, the defect is termed as Not a Bug.

Below see the Defect Life Cycle:

As shown in the above diagram, we can see how the decision over the defect is taken. And from the diagram, it can be inferred, how the defect's status is changing from time to time.

Initially, the defect detection starts at the top block in the L.H.S. The defect is encountered by the tester. And since the defect is encountered for the first time, so, the status for the defect is set to New. Then the defect is transferred to the team to analyze the defect.

The team or the project manager may decide whether the defect is valid or not. If it is an invalid defect (defect which cannot be considered as a defect or is neither a bug) then the status for the defect is set to Rejected.

Or, if the defect is valid, then the next step is to assign a new status to the defect. Now in case, the defect is a similar one, then the defect is assigned as duplicate, but the similar iterations go on.

Conclusion

Testing is a very important part of every website and mobile app development. Please read the blog and share your reviews in the comment section.

We Serve clients globally in diverse industries

Stay Upto Date With Our Newsletter.