Я пытаюсь протестировать наше дерево исходников, используя PHPUnit, со старым, устаревшим веб-кодом, пытаясь внести как можно меньше изменений, чтобы начать.Как только тестирование начнется, я смогу изменить функции библиотеки для лучшего использования и лучшего модульного тестирования.Однако мне нужно выполнить тесты, чтобы позволить мне изменить его.
Вопрос: Мы разделяем код библиотеки во многих проектах нашего приложения, но все они имеют общую структуру каталогов.Когда веб-сайт работает, локальные каталоги становятся доступными, когда нам требуются файлы в библиотеке.
Примите это во внимание:
APP1
APP2
Library
Library/COMM
Library/UTIL
...
При запуске приложения вы указываете на APP1 или APP2 дляразные приложения.У них есть общий код (обмен сообщениями, доступ к БД и т. Д.).в библиотеке.Проблема в том, что функциям в библиотеке нужны специальные параметры для работы, так как они кодируются сегодня.Эти библиотеки просто требуют ('Config.php');поскольку он будет найден либо в APP1, либо в APP2 (у них обоих есть один со специфическими для приложения настройками), и веб-сервер использует APP1 или APP2 в качестве каталога, когда требуются файлы библиотеки () 'd.
Несмотря на то, что это работает, происходит сбой при попытке запустить код в PHPUnit.Мой вопрос заключается в том, как включить файл Config.php без необходимости слишком много менять прежний код до начала тестирования.
Я знаю, что это неправильный формат, но это то, что я унаследовал.
Я не могу просто потребовать ('../../ APP1 / Config.php');поскольку оба приложения совместно используют эту библиотеку.
Любые предложения приветствуются.
Примечание. Мы пытаемся протестировать библиотеку и все проекты, когда начинаем писать тесты, поэтому не уверены, что include_path ее решит.Я рассматриваю различные файлы PHPUnit.xml.dist для каждого приложения, но сейчас пытаюсь избежать этого из-за влияния компании на тестирование всех приложений сразу.