美食 / 松饼
FactoryMuffin 支持 CakePHP 3
v0.1.1
2015-04-05 15:09 UTC
Requires
- league/factory-muffin: ~2.1
Requires (Dev)
- phpunit/phpunit: 4.1.*
This package is auto-updated.
Last update: 2024-08-28 01:02:53 UTC
README
FactoryMuffin for CakePHP 3.
关于
出厂时,FactoryMuffin 将 Faker 方法包装起来,用于为您实体生成虚拟数据。
起初,我发布了 gourmet/faker,它在将虚拟数据插入用于演示甚至测试的场景中工作得很好。然而,随着时间的推移,我意识到在许多情况下,我只是在重复自己。就在那时,我想起了 @savant 之前提到过 FactoryMuffin 的经历,并且快速查看后,很快就清楚这是我需要的。
我仍然使用 Faker 插件,因为在某些情况下,仅使用工厂抽象所有内容可能会导致更多的工作。因此,如果您在创建虚拟数据时需要粒度,请尝试它;但在大多数情况下,坚持使用这个。
用法
composer require --dev gourmet/muffin:~0.1
无需在 bootstrap.php
中加载。
示例
假设您有一个 Posts
模型(表、实体和固定值),要创建虚拟数据,您首先需要在 tests/Factory/PostFactory
中定义工厂
<?php namespace App\Test\Factory; use Gourmet\Muffin\TestSuite\TestFactory; class PostFactory extends TestFactory { public $title = 'sentence|5'; // a sentence with 5 words public $body = 'text'; // some text public $author = 'name'; // a person's name }
然后您可以在测试中使用它,如下所示
public function setUp() { $this->FeedFactory = new \App\Test\Factory\PostFactory(); } public function testSomething() { $post = $this->FeedFactory(1); // create a single record $this->assertTrue(isset($post->id)); $this->FeedFactory(10); // create 10 records }
有关创建虚拟数据的可用方法和如何使用它们的更多信息,请参阅FactoryMuffin 和 Faker 文档。
许可证
版权所有 (c)2015, Jad Bitar,并许可在 MIT 许可证 下。