PHPUnit возвращает разные результаты (для одного и того же набора файлов проекта Zend Framework) в разных местах

#php #zend-framework #phpunit

#php #zend-framework #phpunit

Вопрос:

Моя тестовая среда PHPUnit настроена на запуск с проектом ZF. и все работает довольно хорошо из одного места. Но когда я перемещаю все файлы проекта (через git clone) в другое место, phpunit запускается, но возвращает «OK (0 тестов, 0 утверждений)», Хотя на самом деле есть пара тестов.

Один и тот же процесс хорошо работал в двух разных местах, пока я вручную не понизил версию phpunit с 3.6.5 до 3.4.15 (что кажется неизбежным для проектов ZF). Не уверен, что происходит не так? Или, если есть какой-либо журнал выполнения из phpunit, с которым я могу проверить?

мой phpunit.xml

 <phpunit bootstrap="./application/bootstrap.php" colors="true">
  <testsuites>
    <testsuite name="myTests">
        <directory>./</directory>
    </testsuite>
  </testsuites>

    <filter>
        <whitelist>
            <directory suffix=".php">../application/</directory>
            <exclude>
                <directory suffix=".phtml">../application/</directory>
                <file>../application/Bootstrap.php</file>
                <file>../application/controllers/ErrorController.php</file>
            </exclude>
        </whitelist>
    </filter>

</phpunit>
  

выходит:

PHPUnit 3.4.15 от Себастьяна Бергманна.

Время: 0 секунд, объем памяти: 9,50 Мб

OK (0 тестов, 0 утверждений)


где ожидалось:

PHPUnit 3.4.15 от Себастьяна Бергманна.

…..

Время: 0 секунд, объем памяти: 30,75 Мб

ОК (5 тестов, 11 утверждений)

Ответ №1:

Вы хотите понизить рейтинг до 3.5.15, а не до 3.4.15 и просто для пущей убедительности добавьте suffix="Test.php" в свой каталог тег.

Одно из двух должно сработать

Комментарии:

1. Спасибо за ответ, эдориан. Я, наконец, сузил поиск до проблемы наличия точки (.) в пути к каталогу. Например: /home/simon/git-clone будет работать нормально; /home/.simon/git-clone — нет. Поэтому решение для меня простое, просто запустить сервер в другом месте без точки на его пути. Я думаю, это известная проблема для phpunit 3.4.x. Однако в версии 3.6.3 этого не происходит. Кстати, я пытался понизить его до 3.5.15 из pear, но всегда получал последнюю версию. Вот сообщение об этом: dustyreagan.com/downgrade-phpunit-3-6-to-3-5-15 Но я не уверен, что это нормально работает с ZF. К вашему сведению.

2. @simonxy Отличная ссылка! Это определенно пригодится 🙂 — Если ваша проблема решена, установите флажок рядом с моим ответом, чтобы люди знали, что им не нужно проверять этот вопрос снова, поскольку он решен. (Или напишите свой собственный ответ и примите его как решение, если вы хотите, чтобы то, что вы нашли, было легче найти другим :))