В данной статье рассмотрим правильное подключение конфигурационного файла params.php для Codeception в Yii2.

В больших проектах не как не обойтись без тестов и Codeception нам в этом очень сильно помогает. Но если в ваших тестах будут задействованы методы, которым необходимо брать информацию из конфига params, то скорее всего (если у вас не настроен конфиг) вы получите неприятную ошибку следующего вида:

[yii\base\ErrorException] Undefined index: params

рассмотрим на примере (конфигурационной файл для тестирования, указан в вашем файле codeception.yml (configFile)) :

<php
$params = array_merge(
    require(_DIR_ . '/params.php'),
    require(_DIR_ . '/params-local.php')
);

return yii\helpers\ArrayHelper::merge(
    require(_DIR_ . '/main.php'),
    require(_DIR_ . '/main-local.php'),
    require(_DIR_ . '/test.php'),
    require(_DIR_ . '/test-local.php'),
    [
        'components' => [
            'request' => [
                'cookieValidationKey' => '',
            ],
        ],
        'params' => $params
    ],
);