2013-04-20 4 views
1

Ниже приведены пути, где расположены файлы,Entity Класс не найден PHPUnit тест

src\TW\Talk\Entity\Talk.php 
src\Tests\Talk\Entity\TalkTest.php 
src\phpunit.xml.dist 

В TalkTest.php, я включил PHPUnit и сущность разговора.

require_once 'TW/Talk/Entity/Talk.php'; 
require('PHPUnit/Autoload.php'); 

Class TalkTest extends PHPUnit_Framework_TestCase 
{ 
    ... 
} 

В phpunit.xml.dist файла, у меня есть,

<phpunit> 
    <testsuites> 
    <testsuite name="TW"> 
     <file>Tests/Talk/Entity/TalkTest.php</file> 
    </testsuite> 
    </testsuites> 
</phpunit> 

Я бег команды PHPUnit из каталога Src, я получаю сообщение об ошибке, что Fatel Ошибка: Тесты класса»\ TW \ Обсуждение \ Enity \ Talk 'не найден.

Для справки, я имею в виду php-object-freezer-master, который имеет аналогичную структуру.

Любая идея, почему TalkTest не может найти класс Talk?

Команда phpunit пытается найти объект Talk в папке Tests.

ответ

1

Изменение phpunit.xml.dist к

<phpunit bootstrap="loader.php"> 
    <testsuites> 
    <testsuite name="TW_Talk"> 
     <directory>Tests</directory> 
    </testsuite> 
    </testsuites> 
</phpunit> 

и загрузчик файлов, как,

<?php 

function tw_test_autoloader($class) { 
    if(file_exists(__DIR__."\\" . $class . ".php")) 
     require_once(__DIR__."\\" . $class . ".php"); 
} 

spl_autoload_register('tw_test_autoloader'); 

Работал для меня.

Но все же, если я заменю каталог тегов в файл

<file>Tests\TW\Talk\Entity\TalkTest.php</file> 

Это не работает.

0

Проверьте include_path:

echo get_include_path(); 

Он должен содержать каталог, в котором ваш TW/Talk/Entity/Talk.php относителен. Если его нет, вы должны добавить его либо в php.ini, либо в загрузочный файл PHPUnit.

Вы можете легко проверить, если PHP может найти файл, используя ваш включить путь с этим:

var_dump(stream_resolve_include_path('TW/Talk/Entity/Talk.php')); 
+0

Команда phpunit пытается найти объект под папкой Tests. Я добавил «использовать TW \ Talk \ Entity \ Talk»; Он должен идеально искать сущность в папке «Тесты» – vishal

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