Defect/Bug life cycle

Tharushi De Silva
Aeturnum
Published in
4 min readMay 23, 2022

Are you new to the Quality Assurance Industry? And are you not confident enough on the defect statuses that you put after logging an issue?

If so, this is a basic defect status reporting assistance to you if you are a newbie and not sure on how to set the status of an issue when you raise one like a pro!

So let’s learn this through defect life cycle.

What is defect life cycle?

A defect in software testing has its own life span. Just like us humans! Defect life cycle is the states that a defect stays through its entire life span.

The purpose if a defect life cycle is to track and understand the actual progress of a defect during the software development cycle.

Let’s see what the stages of this defect life cycle are

Stage 1 : New

  • When the software tester finds the defect after testing the software application, the tester reports it for the first time. And the defect is assigned the status ‘New’ at this point.

Stage 2 : Assigned

  • All our Quality Engineering teams of a project has a ‘QA Lead’ in it. Once a tester reports the defect, the QA lead approves that defect and then assigns it to the development team in this stage.

Stage 3 : Open

  • This is the stage where the assigned developer starts analyzing the defect and work on the relevant fix. This is the stage where you will find the developer getting back to you regarding any clarifications he has.
  • We can have 3 types of statuses additionally for the defect during this stage. Those are duplicate, rejected, differed.

Duplicate-If this open bug is already reported by the same or a different tester in the team, the defect is marked as ‘Duplicate’ and can be ‘Closed’.

Rejected-Not all defects are defects after all! 😃

If the assigned developer claims that the reported defect is not a genuine defect, then he can change the status to ‘Rejected’ and can be ‘Closed’.

In this scenario if the tester feels like this is still valid, tester can talk to out with the team and re-open or else it might be an enhancement. So tester can report it as an enhancement.

Deferred- Everything has priorities,😉 So does the release!

Just like we don’t implement all the tasks in the backlog in one release, we sometimes don’t fix all the reported defects in one release. There are occasions where the reported defects are prioritized.

This usually done by the team lead in collaboration with the QA team and at the end of a discussion some defects are moved to next or future releases. In this case we can mark the defect status as ‘Deferred’ and NO!, we can’t close it.

Stage 4 : Fixed

  • Let’s assume that our defect is perfectly fine ready for fixing in this release. In this stage, the developer completes implementing the fix for the defect found by the tester. And therefore, he marks the defect status and fixed and this makes it available for the tester to verify the defect.

Stage 5 : Pending retest

  • We all are aware that, testers can’t verify the fixed defects right away when a developer releases the fix. This can be due to any on going testing tasks that tester has at that moment. Hence, once the defect is fixed, the defect goes to a state called ‘Pending retest’ because the retesting is still pending from tester’s end.

Stage 6 : Test

  • In this stage, tester conducts the defect verification process. This stage can lead the defect into two more states.

Re-opened-Testers might find out that the defect is still existing even after the fix verification. In this case, tester changes the defect status to ‘ Re-opened’ and the defect now should again be fixed and re-tested. Cycle repeats until the defect is no longer there.

Verified-After testers are done with the re-testing, if the defect is no longer there and fixed, the tested marks the defect as ‘Verified’.

Stage 7: Closed

  • When the defect is no longer there, it’s marked as ‘Closed’. Usually, ‘Verified’, ‘Rejected’, ‘Duplicated’ bugs come under this stage and this is the final stage of a defect.

Hope you got an overall idea on the life cycle of a defect during your testing cycle. And hopefully you can now set status of your defects like a pro!

--

--