Почему я могу опустить обязательный файл автозагрузки композитора при использовании phpunit, но должен делать это при запуске другого scriopt? - PullRequest
0 голосов
/ 21 сентября 2019

Я просто хочу опустить использование требования / включения файла каждый раз, когда я создаю новый файл.

Я заметил это, когда впервые использовал PHPUnit:

UserTest.php

// This works without explicitly importing the file
// require_once __DIR__ . "path/to/file/autoload.php";

use PHPUnit\Framework\TestCase;

class UserTest extends TestCase
{
    /** @test */
    public function can_set_first_name(): void
    {
        $user = new \App\Model\User;

        $user->setFirstName('kyle');

        $this->assertEquals($user->getFirstName(), 'kyle');
    }
}

First.php

namespace App\Sample;

//Cannot find the file if I omit this line below
require_once __DIR__.'../../../vendor/autoload.php';

use App\Model\User;

class First extends User {}

Почему это работает в первом примере, даже если я не включаюautoload.php явно?

...