2015-10-17 8 views
0

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

"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 без каких-либо аргументов.

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

+0

Какова ваша точная командная строка? Что в вашем phpunit.xml? Где установлен PHPUnit? Что имеется в сценарии начальной загрузки, если он есть? – Sven

+0

Эй, @Sven, см. Правки. – brazorf

ответ

0

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

 Смежные вопросы

  • Нет связанных вопросов^_^