piece / makegood

A continuous test runner for Eclipse PDT
https://github.com/piece/makegood/wiki
44 stars 17 forks source link

PHPUnit_Framework_Exception: Fatal error: Interface 'Stagehand\ComponentFactory\IComponentFactory' not found #19

Open soluble-fish opened 11 years ago

soluble-fish commented 11 years ago

Hi,

Below, the output of running a single line test.

The Stagehand\ComponentFactory\IComponentFactory Interface exists and is in the same folder as the ComponentFactory

This error prevents any testing being done.

Env: Windows 7 Eclipse Juno 4.2.1 PHP 5.4.7 PHPUnit 3.7.10 MakeGood 2.1.0 was installed today from the update site

Thanks.

THE CONSOLE OUTPUT:

Time: 14 seconds, Memory: 5.75Mb

There was 1 error:

1) Exception2Test::testCalculate PHPUnit_Framework_Exception: Fatal error: Interface 'Stagehand\ComponentFactory\IComponentFactory' not found in C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\ComponentFactory\ComponentFactory.php on line 50

C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\Runner\PHPUnitRunner.php:120 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\Process\TestRun.php:103 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\CLI\TestRunner.php:69 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\CLI\TestRunnerApplication\Command\PluginCommand.php:145 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Symfony\Component\Console\Command\Command.php:239 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Symfony\Component\Console\Application.php:193 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Symfony\Component\Console\Application.php:106

Caused by ErrorException: unserialize(): Error at offset 0 of 273 bytes

C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\Runner\PHPUnitRunner.php:120 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\Process\TestRun.php:103 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\CLI\TestRunner.php:69 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Stagehand\TestRunner\CLI\TestRunnerApplication\Command\PluginCommand.php:145 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Symfony\Component\Console\Command\Command.php:239 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Symfony\Component\Console\Application.php:193 C:\Users\K\Desktop\JavaDev\eclipse\plugins\com.piece_framework.makegood.stagehandtestrunner_2.1.0.v201208021610\resources\php\php\Symfony\Component\Console\Application.php:106

FAILURES! Tests: 1, Assertions: 0, Errors: 1.

mandos commented 10 years ago

First of all, great tool, thank you for it!

I have similar problem but only during process isolation setting to TRUE.

Env: Xubuntu 64 Eclipse Kepler 4.3.1.M20130911 PHP 5.4.9 PHPUnit 2.7.24 MakeGood 2.4.1

1) Xstream\Daemon\WatchfolderDaemonTest::testConsume_genealFlow PHPUnit_Framework_Exception: PHP Fatal error: Interface 'Stagehand\ComponentFactory\IComponentFactory' not found in /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Stagehand/ComponentFactory/ComponentFactory.php on line 50 PHP Stack trace: PHP 1. {main}() -:0 PHP 2. require_once() -:59

Fatal error: Interface 'Stagehand\ComponentFactory\IComponentFactory' not found in /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Stagehand/ComponentFactory/ComponentFactory.php on line 50

Call Stack: 0.0011 299320 1. {main}() -:0 0.0034 547832 2. require_once('/home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Stagehand/ComponentFactory/ComponentFactory.php') -:59

/home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Stagehand/TestRunner/Runner/PHPUnitRunner.php:81 /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Stagehand/TestRunner/Process/TestRunner.php:106 /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Stagehand/TestRunner/CLI/TestRunnerApplication/Command/PluginCommand.php:149 /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Symfony/Component/Console/Command/Command.php:240 /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Symfony/Component/Console/Application.php:193 /home/opt/eclipse-kepler-php/plugins/com.piece_framework.makegood.stagehandtestrunner_2.4.1.v201303271518/resources/php/php/Symfony/Component/Console/Application.php:106

iteman commented 10 years ago

MakeGood does not support the process isolation feature of PHPUnit.

MakeGood launches a test run by MakeGood's launcher script testrunner.php including autoloder configuration. But process isolation uses the phpunit command directly.

SherportFalk commented 10 years ago

Concerning the initial Issue with ComponentFactory not found on windows. I have the same issue on windows and it seems its the problem of windows with long paths. For my user directory (4 Chars) the path to ComponentFactory.php is 262 chars. If i try with the shorter filename of compiler.php (which also resides in the same directory) the classLoader can open the file. I dont know how to overcame the windows 256-chars problem, so for now makegood is unusable on windows 7. :(