代码之家  ›  专栏  ›  技术社区  ›  Chuck Le Butt

无法在Laravel中的测试的setUp()方法中使用factory()

  •  0
  • Chuck Le Butt  · 技术社区  · 4 年前

    我在重构Laravel测试时遇到了一个错误,在 setUp() 方法

    <?php
    
    namespace Tests\Feature;
    
    use App\Models\Person;
    use Tests\TestCase;
    
    class MembershipTicketsTest extends TestCase
    {
    
    public function test_a_non_member_cannot_list_redeemable_events()
    {
        $user = Person::factory()->create();
    
        $this->actingAs($user);
    
        $this->get(route('event.index'))->assertStatus(302)->assertRedirect(route('membership.create'));
    }
    

    其中,返回错误 Unknown formatter "firstName" :

    <?php
    
    namespace Tests\Feature;
    
    use App\Models\Person;
    use Tests\TestCase;
    
    class MembershipTicketsTest extends TestCase
    {
        protected $user;
    
        protected function setUp() : void
        {
            $this->user = Person::factory()->create();
        }
    
        public function test_a_non_member_cannot_list_redeemable_events()
        {
    
            $this->actingAs($this->user);
    
            $this->get(route('event.index'))->assertStatus(302)->assertRedirect(route('membership.create'));
        }
    

    use Tests\TestCase; 在你的档案里,我就是这么做的。

    设置() 拉威尔试验方法。这是真的吗?为什么是这样?

    0 回复  |  直到 4 年前