Я использую 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
без каких-либо аргументов.
Как я могу это исправить?
Какова ваша точная командная строка? Что в вашем phpunit.xml? Где установлен PHPUnit? Что имеется в сценарии начальной загрузки, если он есть? – Sven
Эй, @Sven, см. Правки. – brazorf