codeception

codeception Передача ENV переменных среды окружения - использование в коде

Для использования в коде PHP

Если нужно использовать в коде, то проще всего передать напрямую средствами командной оболочки:

export BASE_DOMAIN=test2 && cept run

- для докера это можно сделать так

При этом в коде считать переменную можно будет так:

symfony codeception Мок валидатора - подмена сетевого валидатора для функциональных тестов

Возможное решение

Для начала нужно получить именно тот контейнер, который реально используется для эмуляции сетевого запроса в ваших тестах.
После того как вы определились на чем именно (на каком объекте) вызывать getContainer() или подобный метод получающий контейнер, мок можно провести с помощью метода вроде:

codeception symfony functional Функциональные тесты, Получение клиента (client)- заметки, mock

Наброски того, как можно организовать функциональное тестирование API без браузера/сервера

Проверялось на: Symfony 6, Symfony 7, Codeception 5

Получение клиента

См. отдельную заметку о получении клиента

Использование клиента - отправка запросов

Используя клиент можно авторизоваться напр. так (в т.ч. получить куку):

codeception assertArrayHasKey() must be an array or ArrayAccess Ошибка

PHPUnit\Framework\Assert::assertArrayHasKey() must be an array or ArrayAccess

codeception Вспомогательные пользовательские классы для тестов

Вы всегда можете положить свои файлы рядом с классом теста (если они не общие), а потом прямо в классе Cest-а сделать require (таким образом файл может содержать любой неймспэйс и автозагрузка не понадобится), например для цеста tests/unit/Application/ContainerTestCest.php:

Pages

Subscribe to RSS - codeception