在C#中使用Laravel模型工厂

时间:2019-05-24 13:25:03

标签: c# laravel unit-testing mocking factory-pattern

所以我主要使用C#,但是我一直在观看Adam Wathan的TDD Laravel课程,以了解世界上的情况。我遇到过一个关于模型工厂的想法,我以前从未在C#中看到过有关材料的想法,我很好奇大家都建议这样做吗?我猜想接口类和Moq有某种组合?能够在单元测试中仅提供我要测试的字段(在下面的示例中,我仅检查日期),并且使事情变得简单且易读,这真是太好了。

这是Laravel中的模型工厂的示例。这样,您就可以为单元测试使用默认的伪造数据,并且只能传递要测试的特定数据,在这种情况下,这是一个以日期为中心的单元测试。

$factory->define(App\Concert::class, function (Faker\Generator $faker) {
    return [
        'title' => 'Example Band',
        'subtitle' => 'with The Fake Openers',
        'date' => Carbon::parse('+2 weeks'),
        'ticket_price' => 2000,
        'venue' => 'The Example Theatre',
        'venue_address' => '123 Example Lane',
        'city' => 'Fakeville',
        'state' => 'ON',
        'zip' => '90210',
        'additional_information' => 'Some sample additional information.',
    ];
});

$concert = factory(Concert::class)->create([
            'date' => Carbon::parse('2016-12-01 8:00pm'),
        ]);

0 个答案:

没有答案