【问题标题】:laravel unit testing with factories Unable to locate factory with name [default]带有工厂的 laravel 单元测试无法找到具有名称的工厂 [默认]
【发布时间】:2019-03-10 19:15:56
【问题描述】:

我尝试在 laravel 单元测试中为我的一个模型创建一个工厂

use Illuminate\Support\Collection;
use phpDocumentor\Reflection\Types\Parent_;
use Tests\TestCase;
use Illuminate\Foundation\Testing\WithFaker;
use Illuminate\Foundation\Testing\RefreshDatabase;
use App\User;
use Illuminate\Auth;
use App\Role;
use App\AppName\HolidaysEmployees;
use Illuminate\Foundation\Testing\DatabaseTransactions;

class TestApiCalls extends TestCase
{


    public function setUp()
    {
        parent::setUp();

        $this->user = factory(User::class)->create([
            'firstname' => 'RA',
            'lastname' => 'Tester',
            'password' => bcrypt('tester'),
            'email' => 'ra@tester.com'
        ]);

        $this->holidays = factory(HolidaysEmployees::class)->make();
    }

}

但是当我运行测试时,我不断得到

InvalidArgumentException: Unable to locate factory with name [default] [App\MyName\HolidaysEmployees].

在这种情况下我做错了什么?

【问题讨论】:

  • 你有HolidaysEmployees::class的工厂吗?
  • 哎呀,感谢您的反馈,我忘记了

标签: laravel model phpunit factory


【解决方案1】:

我找到了如何在线解决这个问题:

改变

class TestApiCalls extends TestCase

class TestApiCalls extends \Tests\TestCase

【讨论】:

    猜你喜欢
    • 2018-02-14
    • 2016-07-25
    • 2019-10-05
    • 2018-06-09
    • 1970-01-01
    • 2021-01-29
    • 2020-02-26
    • 2019-03-19
    • 2017-03-13
    相关资源
    最近更新 更多