Привет. Я уверен, что не один у кого тесты ломаются из-за этого попапа.
В чем суть: Тест (Cest) А проходит на странице которую покинуть можно только подтвердив свой уход во всплывающем окошке. И если тест А ломается, то все остальные тесты (Cest’ы) которые будут проходить дальше не смогут перейти на свою страницу из-за попапа на странице теста А. В итоге они все “Error”, а на всех скриншотах злополучная страница с теста А.
Может кто-то пример показать хука _failed который открывает новую пустую страницу, а старую закрывает с $I->acceptPopup(); ?
Или может есть другой способ который я из-за неопытности не вижу?
Тема о том, почему надо в каждом тесте открывать новый браузер (и закрывать по завершении), а не решать несуществующие проблемы, оставленные следующему тесту предыдущим
можно в BeforeTest переходить на дефолтную страницу (например, Главная) путем drivet.get(<здесь урл>) и таким образом игнорировать все оставшиеся от предыдущего теста проблемы
Если попап и этому может мешать, то можно в AfterTest-методе пробовать обнаружить типичные проблемы, которые может за собой оставить упавший тест (тот же открытый Alert) и устранять их (подчищать за собой), чтобы следующий тест мог продолжать работу.
P.S. BeforeTest / AfterTest - методы, которые вызываются фреймворком перед/после каждым тестом. Как это организовано в Codeception я не знаю, но по идее аналоги должны быть