Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Codeception как очищать куки после выполнения Класса тестов

webdriver
Теги: #<Tag:0x00007f7b68dca1f0>

(Руслан Бондаренко) #1

Проблема (Вопрос) заключается
Ранее у меня была структура
1 тест: 1 класс 1 метод
Сейчас переделал сделал
1 тест 1 класс 10 методов

Столкнулся с проблемой что после каждого метода очищались куки, добавил в aceeptance.suite.yml

clear_cookies:false

Получилось все хорошо так как куки перед выполнением каждого метода перестали очищаться, но если выполнять группу тестов то есть так

5 тестов 5 классов 50 методов

Получается что куки не очищаются

Как сделать так что бы куки очищались перед началом нового класса

Возможно как то в метод _after что то добавить что бы оно чистило все куки, но не могу найти что туда добавить…


(Максим Наталич) #2

Попробуйте это
https://codeception.com/docs/modules/PhpBrowser#resetCookie


(Руслан Бондаренко) #3

Не, он чистит определенный куки, сделал так

в Helper\Acceptance.php добавил

function clearAllCookies()
{
return $this->getModule(‘WebDriver’)->webDriver->manage()->deleteAllCookies();
}

и в конце каждого теста добавляю метод

public function testExit(AcceptanceTester $I)
{
$I->clearAllCookies();
}


(Руслан Бондаренко) #4

Так же кто то может столкнутся с такой проблемой как я при использовании этого способа

Если у вас есть сайт c примерно таким поддоменом
site.dev.domen.com

И при прохождении автотеста он идет на другой поддомен
crm.dev.domen.com

Если запустить данный метод clearAllCookies, он очистит куки на том домене на котором вы находитесь
то есть: crm.dev.domen.com

Вроде элементарно… но может кто то столкнется с таким