当我运行测试时,它给了我这个错误:
未定义的变量 $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
将返回null。为了解决这个问题,在调用$this->faker
之前,您需要调用$this->setupFaker()
。 - Ebiuse Illuminate\Foundation\Testing\WithFaker;
添加到你的导入中!为什么大家都忽略了这个重要的部分? - Sliquse WithFaker;
,然后$this->faker
就可以在所有测试中使用了。 - Jason