New: when tester reports a defect
Open: when developer accepts that it is a bug or if the developer rejects the defect, then the status is turned into "Rejected"
Fixed: when developer make changes to the code to rectify the bug...
Closed/Reopen: when tester tests it again. If the expected result shown up, it is turned into "Closed" and if the problem persists again, it's "Reopen".
For a Valid Defect -
1. New
2. Open
3. Ready for Retest/ Fixed
4. If the issue is fixed, then change the status to close else reopen the defect and inform the dev team regarding the same to rework on the defect.
5. Final Status is Closed
For a invalid Defect: -
1. New.
2. Open.
3. Rejected.