Зачем нужен index-test.php, который фактически является копией index.php за исключением файла конфига?
Возможно я не понимаю принципа такого разделения, но...
Как по мне, так я бы index-test.php сделал только входной точкой, например, для установки куки и запуска index.php.
Например, так:
// -- Устанавливаем куки, чтобы определять, что сейчас мы в режиме тестирования
$_COOKIE['CODECEPTION_COOKIE'] = 1;
setcookie('CODECEPTION_COOKIE', 1);
// -- -- -- --
require_once('index.php');// Подключаем основной файл
И в index.php я уже разрулю, какой конфиг подключать:
// -- Подключаем разные конфиги в зависимости от того, тест это или рабочая версия сайта
if (array_key_exists('CODECEPTION_COOKIE', $_COOKIE)) {
$configFile = 'test';
} else {
$configFile = 'main';
}
// -- -- -- --
Ведь, по сути, нам надо тестировать сайт с теми же настройками, с которыми он будет на продакшене.
И ввиду этого должен как раз подключаться index.php, ведь там указаны ещё и параметры настройки сервера, например:
if (!ini_get('date.timezone')) {...}
mb_internal_encoding('UTF-8');
mb_regex_encoding('UTF-8');
К тому же, при работе через index-test.php в URL в начало добавляется /index-test.php/.
А из-за этого при тестах не удаётся найти ссылку вида href="/logout", так как она содержит название скрипта (включён showScriptName).
В-общем, подытожу вопрос...
Есть ли какой-то объективный смысл дублировать код?
Или же это просто из ряда "ну так повелось..."?