incraigulous/data-factories

数据工厂辅助类,用于模拟数据。这受到了Laravel模型工厂的启发,不同之处在于数据工厂不依赖于模型。数据工厂非常适合模拟API响应、请求或其他不持久化到数据库的数据。数据工厂不依赖于Laravel,因此您可以在任何地方使用此包。

2.0.0 2019-07-09 15:47 UTC

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);