incraigulous / data-factories
数据工厂辅助类,用于模拟数据。这受到了Laravel模型工厂的启发,不同之处在于数据工厂不依赖于模型。数据工厂非常适合模拟API响应、请求或其他不持久化到数据库的数据。数据工厂不依赖于Laravel,因此您可以在任何地方使用此包。
2.0.0
2019-07-09 15:47 UTC
Requires
- fzaninotto/faker: ^1.8
Requires (Dev)
- phpunit/phpunit: ^8
Suggests
- fzaninotto/Faker: You have to bring your own data faker library. I suggest this one.
This package is auto-updated.
Last update: 2024-09-10 02:51:48 UTC
README
数据工厂辅助类,用于模拟数据。这受到了Laravel模型工厂的启发,不同之处在于数据工厂不依赖于模型。数据工厂非常适合模拟API响应、请求或其他不持久化到数据库的数据。数据工厂不依赖于Laravel,因此您可以在任何地方使用此包。
安装
composer require incraigulous/data-factories
添加数据工厂文件夹
示例工厂文件
<?php
use Faker\Generator as Faker;
$factory->define('test-factory', function(Faker $faker) {
$email = $faker->email;
return [
'name' => $faker->name,
'email' => $email,
'email_confirmation' => $email,
'phone' => $faker->phoneNumber,
'message' => $faker->paragraph(),
];
});
引导
您可以在测试引导的地方注册您的工厂。例如,在您的 phpunit
TestCase
SetUp
方法中。如果您将所有工厂文件放在 /tests/factories
文件夹中,您可能会这样做
protected function setUp() {
parent::setUp();
DataFactory::registerPath(__DIR__.'/factories/*.php');
}
使用工厂
您可以这样返回一个单独的工厂
$person = DataFactory::make('person');
或一个工厂数组
$people = DataFactory::make('person', 10);