我是 Laravel 的新手。我有 2 表产品和产品。另外,我有 2 家工厂 ProductionFactory 和 ProductFactory。我想通过 phpunit 测试它们。他们的连接是通过 production_id。
错误是 ErrorException:未定义的变量:生产。
我不明白。
提前致谢。
这是一个代码。
生产工厂.php
$factory->define(App\Production::class, function (Faker $faker) {
return [
'name' =>$faker->name,
];
});
产品工厂.php
$factory->define(App\Product::class, function (Faker $faker) {
$production_id = App\Production::pluck('id');
if(!$production_id->isEmpty()){
$production = $production_id->random();
}
return [
'id' =>$faker->uuid,
'name' =>$faker->name,
'price' => $faker->numberBetween($min = 100, $max = 900),
'description' =>Str::random(10),
'production_id'=> $production,
];
生产测试.php
class ProductionTest extends TestCase
{
use RefreshDatabase;
/**
* A basic unit test example.
* @test
* @return void
*/
public function production()
{
factory(Production::class)->make();
$this->assertTrue(true);
}
}
产品测试.php
class ProductTest extends TestCase
{
use RefreshDatabase;
/**
* A basic unit test example.
* @test
* @return void
*/
public function product()
{
factory(Product::class)->make();
$this->assertTrue(true);
}
}