Ошибка: вызов неопределенной функции CodeIgniter\Test\helper() в тестах PHPUnit для проекта CodeIgniter

Я работаю над проектом CodeIgniter и установил PHPUnit для запуска модульных тестов. Однако при выполнении тестов я сталкиваюсь со следующей ошибкой для каждого теста, включая примеры тестов, предоставленные PHPUnit:

Error: Call to undefined function CodeIgniter\Test\helper()

Вот пример сообщения об ошибке:

There was 1 error:

Error: Call to undefined function CodeIgniter\Test\helper()

C:\xampp\htdocs\moduloNoticias\vendor\codeigniter4\framework\system\Test\CIUnitTestCase.php:234

Я выполнил стандартную процедуру установки PHPUnit в проекте CodeIgniter. Я также убедился, что PHPUnit правильно установлен и настроен.

Что я пробовал:

  1. Дважды проверил мой композитор.json и переустановил зависимости с помощью установки композитора.
  2. Проверено, что вспомогательная функция определена и корректно работает вне тестовой среды.
  3. Проверил конфигурацию автозагрузки в app/Config/Autoload.php, чтобы убедиться, что помощник указан.
  4. Добавлены помощники в качестве атрибутов в класс CIUnitTestCase и в мой тестовый класс.
  5. Включены помощники в XML-файл конфигурации PHPUnit (phpunit.xml.dist).

Нужно ли мне выполнить какую-либо дополнительную настройку или мне может не хватать чего-то, что может вызвать эту ошибку? Любые рекомендации будут очень признательны.

Опубликуйте свой код.

Mr. Kenneth 23.05.2024 06:07
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
62
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
    bootstrap = "vendor/codeigniter4/framework/system/Test/bootstrap.php"

измените указанный выше путь boostrap в вашем «phpunit.xml.dist», который находится в корне вашего проекта. Вот что решило мою проблему, по каким-то причинам healthTest.php не работает из коробки. в моем случае тест, который я написал, работал, но я никогда не мог понять, почему самый здоровый всегда терпел неудачу.

Это решило мою проблему! Однако кажется, что у PHPUnit в CodeIgniter есть другие проблемы, но, по крайней мере, пока он работает. Большое спасибо!

Franco Gutierrez 06.06.2024 13:40

Пожалуйста, какие еще у вас проблемы? Я готов помочь.

red lord 07.06.2024 14:05

Другие вопросы по теме

Похожие вопросы

LexikJWTAuthenticationBundle всегда отклоняет токены JWT при использовании кодировщика веб-токенов
Как реализовать базовое использование Google reCaptcha v3
Я всегда получаю "Ресурс с данным идентификатором не найден"
Автоматическое обновление корзины WooCommerce при изменении количества товаров в корзине
Почему мое электронное письмо не интерпретирует мой код и не отображает необработанный код?
Замените кнопку «Добавить в корзину» в цикле кнопкой, связанной с продуктом, и другим текстом в зависимости от категорий
OSX Sonoma, свежая версия mariadb, php не может загрузить pdo-mysql
Динамическое отображение определенного варианта оплаты на основе адреса электронной почты или телефона для выставления счета при оформлении заказа Woocommerce
Wordpress добавляет глобальный и классический встроенный CSS программно
Мои контроллеры проекта Laravel не существуют. почему?