Запустите PHPUnit для папок плагинов из корневого каталога

Я хотел бы запустить свои тесты PHPUnits в плагинах из корневого каталога.

Проблема в том, что каждый отдельный плагин поступает из своего собственного репозитория, и PHPUnit регистрируется там через зависимости composer dev.

Процесс сборки основного проекта «Приложение» извлекает плагины с помощью композитора.

В этой структуре есть мой текущий проект PHP:

/Application
  /Plugins
    /PluginFirst 
        /tests
    /PluginSecond
        /tests
    /PluginThird
        /tests

Идея состоит в том, чтобы создать сценарий оболочки или ruby ​​для итерации папки плагинов и запуска PHPUnit.

Стоит ли изучать 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
0
266
1

Ответы 1

Вы можете создать файл конфигурации с именем phpunit.xml.dist и сохранить его в корневой папке проекта со следующей конфигурацией. Предполагая, что у вас также есть тестовая папка для запуска ваших собственных модульных тестов на том же уровне папки:

<?xml version = "1.0" encoding = "UTF-8"?>
<phpunit>
     <testsuites>
        <testsuite name = "Application API Test Suite">
            <directory>./tests/</directory>
            <directory>./Plugins/</directory>
        </testsuite>
     </testsuites>
</phpunit>

Затем вы можете запустить phpunit следующим образом:

phpunit --configuration phpunit.xml.dist

Если вы хотите исключить, например, папку PluginThird, вы можете добавить эту строку внутри тега

<exclude>./Plugins/PluginThird/</exclude>

Спасибо за ответ. Проблема в том, что корневой проект «Приложение» не имеет зависимости PHPUnit. (Что очень желательно) У каждого плагина есть своя разработка PHPUnit Dependency.

mischaZeng 02.10.2018 22:35

«Приложение» готово к производству и будет развернуто. Следовательно, нет зависимости PHPUnit от «Приложения».

mischaZeng 02.10.2018 22:42

Какой PHP-фреймворк вы использовали для создания своего приложения?

user3267053 02.10.2018 22:48

Мы используем WordPress и WPCLI, эта структура является только сниппетом.

mischaZeng 02.10.2018 22:53

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