Software Testing Life Cycle – STLC – Revision – Part – 2
This blog explains about Software Testing Life Cycle – STLC – Revision – Part – 2 given below :
We have already discussed about some topics in previous blog ” Software Testing Life Cycle – STLC – Revision – Part – 1 “
A software bug or defect is an error, flaw, failure or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.
Defect Life Cycle:
- Defect Life Cycle or Bug Life Cycle is the specific set of states that a Bug goes through from discovery to defect fixation.
- Defect life cycleis the journey of a defect cycle, which a defect goes through during its lifetime. It varies from organization to organization and from project to project as it is governed by the software testing process and depends upon the tools used.
Defect Life Cycle – Workflow:
- When a defect is found by tester it is logged and posted for the first time. It’s state is given as new.
- Validations and testing are performed on this defect in the later stages of the defect life cycle.
- After the tester has posted the bug, the lead or the manager of the tester approves that the bug is genuine.
- After that he assigns the bug to corresponding developer and the developer team. It’s state given as assigned.
Here, the developer starts the process of analyzing the defect and works on fixing it, if required. If the developer feels that the defect is not appropriate then it may get transferred to any of the below four states namely Duplicate, Deferred, Rejected or Not a Bug-based upon the specific reason.
- Rejected: If the defect is not considered as a genuine defect by the developer lead or Manager then it is marked as ‘Rejected. and assigns back to QA team with proper explanation mentioned in defect description. The QA team further may reopen/close the defect based on the explanation provided.
- Duplicate: If the developer finds the defect as same as any other defect or if the concept of the defect matches with any other defect then the status of the defect is changed to ‘Duplicate’ by the developer.
- Deferred: If the developer feels that the defect is not of very important priority and it can get fixed in the next releases or so in such a case, he can change the status of the defect as ‘Deferred’.
- Not a Bug: If the defect does not have an impact on the functionality of the application then the status of the defect gets changed to ‘Not a Bug’.
When developer makes necessary code changes and verifies the changes then he/she can make bug status as ‘Fixed’ and the bug is passed to testing team.
After fixing the defect the developer has given that code for retesting to the tester. Here the testing is pending on the testers end. Hence its status is pending retest.
At this stage the tester do the retesting of the changed code which developer has given to him to check whether the defect got fixed or not
The tester tests the bug again after it got fixed by the developer. If the bug is not present in the software, he approves that the bug is fixed and changes the status to “verified”.
If the bug still exists even after the bug is fixed by the developer, the tester changes the status to “reopened”. The bug goes through the life cycle once again.
Once the bug is fixed, it is tested by the tester. If the tester feels that the bug no longer exists in the software, he changes the status of the bug to “closed”. This state means that the bug is fixed, tested and approved.
On successful logging, the bug is reviewed by Development or Test manager. Test manager can set the bug status as Open, can Assign the bug to developer or bug may be deferred until next release.