Это дает мне эту ошибку, когда я запускаю тест:
undefined variable $faker.
Это файл WithFaker.
https://github.com/laravel/framework/blob/5.5/src/Illuminate/Foundation/Testing/WithFaker.php
<?php
namespace Tests\Unit;
use App\User;
use Tests\TestCase;
use Illuminate\Foundation\Testing\WithFaker;
use Illuminate\Foundation\Testing\RefreshDatabase;
class LoginTest extends TestCase
{
use WithFaker;
/**
* A basic test example.
*
* @return void
*/
/** @test */
public function test_example()
{
$user = User::create([
'username' => $faker->firstName(),
]);
}
}






Вы должны использовать $this->faker->firstName(), а не только $faker->firstName()
Обновление 1
Теперь, когда мы используем WithFaker Trait, $this->faker даст нам null, чтобы обойти это, сначала обязательно позвоните в $this->setupFaker().
например
class SomeFactory
{
use WithFaker;
public function __construct()
{
$this->setUpFaker();
}
}
кредит @Ebi
Спасибо @Ebi за место
после завершения установки Faker. включить файл автозагрузки и создать экземпляр
$faker = \Faker\Factory::create();
$faker->firstname()
$faker->lastname()
Для получения дополнительной информации посещение
проверьте запуск функции seed (Faker $ faker).
Для всех, кто приедет сюда с 2021 года. Мы больше не требуем добавления
$this->setUpFaker();
Вам нужно только включить черту, как описано в принятом ответе.
Для тех, кто придет к этому позже, имейте в виду, что при использовании трейта WithFaker вы получите null на
$this->faker. Чтобы решить эту проблему, вам необходимо вызвать в$this->setupFaker()перед вызовом$this->faker.