PHPUnit 骨架生成器:致命错误:找不到类“SebastianBergmannPHPUnitSkeleton


PHPUnit Skeleton Generator: Fatal error: Class 'SebastianBergmannPHPUnitSkeletonGeneratorCLIApplication' not found

我正在尝试使用骨架生成器,但每次尝试使用它时,我都会收到以下错误:

Fatal error: Class 'SebastianBergmann'PHPUnit'SkeletonGenerator'CLI'Application' not found in [path_to_project]/vendor/phpunit/phpunit-skeleton-generator/phpunit-skelgen on line 63

背景

我已经通过Composer安装了SkeletonGenerator。

实际上未找到的类存在于路径/vendor/phpunit/phpunit-skeleton-generator/src/CLI/Application 中

我不明白为什么这个类存在,但它没有被看到。

我该怎么做才能解决问题?它与作曲家自动加载包有关吗?

GitHub 问题:https://github.com/sebastianbergmann/phpunit-skeleton-generator/issues/46

一个开始的地方是phpunit-skelgen文件中的这一行:

foreach (array(__DIR__ . '/../../autoload.php', __DIR__ . '/vendor/autoload.php') as $file) {

确保引用的自动加载.php文件确实存在。 测试方法是添加类似以下内容的内容:

echo __DIR__ . '/../../autoload.php' . "'n";

。在 foreach 循环之前,看看它吐出的内容是否真的在你的文件系统中。 我正在使用Laravel 5,自动加载.php位于名为"bootstrap"的目录中。 我把它改成这样:

foreach (array(__DIR__.'/../bootstrap/autoload.php', __DIR__ . '/../vendor/autoload.php') as $file) {

。并且能够将事情推进到下一步(仍然无法生成骨骼测试,但还有其他问题)。