我使用PHPSPEC 3.4.0。当我用
运行phpsec时vendor / bin / phpspec运行
我收到此错误:
类Eastsea \ Service \ FileStorage \ DuplicateFileStorage不存在。
这是我的关于自动加载部分的composer.json文件:
"autoload": {
"psr-4": {
"App\\": "app/"
},
"psr-0": {
"EastSea\\": "src/"
}
}
这是我的文件夹树:
./src
`-- EastSea
`-- Service
`-- FileStorage
|-- DuplicateFile.php
|-- DuplicateFileStorage.php
`-- Result.php
类:
<?php
namespace EastSea\Service\FileStorage;
class DuplicateFileStorage
{
public function validate()
{
// TODO: write logic here
}
public function storage()
{
// TODO: write logic here
}
public function handle(DuplicateFile $file)
{
$file->hash();
}
}
规格:
<?php
namespace spec\Eastsea\Service\FileStorage;
use \EastSea\Service\FileStorage\DuplicateFileStorage;
use \EastSea\Service\FileStorage\Result;
use PhpSpec\ObjectBehavior;
use Prophecy\Argument;
class DuplicateFileStorageSpec extends ObjectBehavior
{
function it_is_initializable()
{
$this->shouldHaveType(DuplicateFileStorage::class);
}
}
答案 0 :(得分:1)
试试这个:
"autoload": {
"psr-4": {
"App\\": "app/",
"": "src/"
}
}
显然在你的composer.json更新后运行composer dump-autoload
。