Проблема возникает скорее всего из-за того, что bootstrap-точка файла Wordpress-ядра вызывает необходимость доступа к суперглобальным переменным, таким как
$_SERVER
. Но в GitLab CI эти переменные не установлены, и поэтому возникает ошибка "Undefined array key "HTTP_HOST"".
При локальном запуске тестов этот массив определен и поэтому вы не видите ошибку.
Чтобы решить эту проблему, можно попробовать заменить
bootstrap="wp-load.php"
на
bootstrap="tests/bootstrap.php"
.
После этого создайте файл
tests/bootstrap.php
со следующим содержимым:
<?php
// Подключаем файл wp-load.php, чтобы иметь доступ к функциям Wordpress
require_once dirname( __FILE__ ) . '/../wp-load.php';
// Устанавливаем значения для некоторых суперглобальных переменных, которые используются в Wordpress
$_SERVER['HTTP_HOST'] = 'localhost';
$_SERVER['SERVER_NAME'] = 'localhost';
$_SERVER['REQUEST_URI'] = '/';
Этот файл загружает файл
wp-load.php
, устанавливает значения для необходимых суперглобальных переменных и предотвращает возникновение ошибок "Undefined array key "HTTP_HOST"".
Либо можно переопределить значение этой переменной внутри вашего файла
phpunit.xml
Для этого необходимо добавить
php
настройки внутри вашего
phpunit.xml
файла, которые переопределят значение
HTTP_HOST
, напр.:
<php>
<server name="HTTP_HOST" value="localhost"/>
</php>
Это должно предотвратить появление ошибки.