Можете поискать-почитать про entry/exit criteria.
В общем виде, как минимум, здравый смыл. (Ну, совсем как минимум, тестирование трудно начать, когда тестировать ещё нечего)
Обычно, определяются индивидуальные проектные критерии, призванные предположить, что AUT (Application Under Test) можно передавать тестировщикам, брать и тестировать. Делается это для того, чтобы не тратить дорогое время тестировщиков на выяснение того, что AUT вообще не работает (не собирается, не деплоится, не инсталлируется, блокирует любые действия при запуске)
А уже в каждом отдельно взятом случае это могут быть (а могут и не быть, важно помнить) совершенно различные критерии, типа пройденных код ревью, зелёных юнит-тестов, зелёных интеграционных тестов, зелёных автотестов на CI, успешного деплоя на тестовый стенд...
Можно также договориться о процессных критериях (программист написал в тикете, что он сделал, что это аффектит, как он это проверил -- да что угодно вообще, если это идёт на благо общему делу и команда обо всём договорилась)