In agile projects, we use the definition of done to ascertain when to consider a user story to be ready for acceptance (implemented and tested). In the project's DoD we have things like following among other things:
- Unit tests implemented for new functionality and are all green (automated build and CI ensure this).
- Acceptance/story tests are written and passing.(these are in a BDD tool)
- Regression tests are green with known failures.(automated)
- Enough exploratory testing has been done to ensure the correctness of new feature and to determine it works as expected
- Unsolved defects are available in a DTS or the backlog.
- Code coverage is above x%. New implementation have not caused any regression or impact on code covergae (i.e code covergae has either preferably improved or remained static since last sprint).
As a tester do you add anything more to this or is it enough ? In case yes; what would be the other things that would help me as a tester to make a decision on when to stop testing a specific user story and pick another one.
PS: I am looking for some guiding principles other than things like testers instinct or gut feeling .