PHPUnit: насмешка не обнаружена при использовании @runTestsInSeparateProcesses

Я использую PHPUnit с Mockery, последний я установил через композитор:

"require-dev": {
    "mockery/mockery": "0.9.*"
},

Теперь рассмотрим следующий тестовый пример

<?php

use Mockery as m;

class FooTest extends PHPUnit_Framework_TestCase {
    function testFoo() {
        m::mock('DateTime');
    }
}

phpunit работает нормально. Теперь рассмотрим следующее:

use Mockery as m;

/**
 * @runTestsInSeparateProcesses
 * @preserveGlobalState disabled
 */
class FooTest extends PHPUnit_Framework_TestCase {
    function testFoo() {
        m::mock('DateTime');
    }
}

В этом случае я получаю исключение Class 'Mockery' not found.

Mockery не найден - на самом деле ничего в каталоге /vendor не найдено, как будто автозагрузка композитора полностью испорчена. Я ездил и на composer update, и на composer dump-autoload.

phpunit.xml

<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
         backupStaticAttributes="false"
         bootstrap="vendor/autoload.php"
         colors="true"
         convertErrorsToExceptions="true"
         convertNoticesToExceptions="true"
         convertWarningsToExceptions="true"
         processIsolation="false"
         stopOnFailure="false"
         syntaxCheck="false"
>
    <testsuites>
        <testsuite name="Package Test Suite">
            <directory suffix=".php">./tests/</directory>
        </testsuite>

    </testsuites>
</phpunit>

Я использую PHPUnit 3.7.10 и запускаю тесты с командной строкой phpunit без каких-либо аргументов.

Как я могу это исправить?


person brazorf    schedule 17.10.2015    source источник
comment
Какова ваша точная командная строка? Что находится в вашем phpunit.xml? Где установлен PHPUnit? Что находится в скрипте начальной загрузки, если он есть?   -  person Sven    schedule 17.10.2015
comment
Привет, @Sven, посмотри правки.   -  person brazorf    schedule 17.10.2015


Ответы (1)


Обновление до PHPUnit 4.x решило эту проблему для меня.

person brazorf    schedule 17.10.2015