Опциональные значения в тестах при помощи Faker
Если у вас есть столбцы в таблице, которые не являются обязательными, и вы хотите генерировать для них значения случайным образом, FakerPHP (используемый в Laravel под капотом) изначально поддерживает опциональные значения 🚀
<?php
// случайная цифра или null
fake()->optional()->randomDigit();
// шанс 90% получить NULL
fake()->optional($weight = 0.1)->randomDigit();
// шанс 10% получить NULL
fake()->optional($weight = 0.9)->randomDigit();
// шанс 90% получить NULL
fake()->optional($weight = 10)->randomDigit;
// шанс 0% получить NULL
fake()->optional($weight = 100)->randomDigit;
// шанс 50% получить FALSE
fake()->optional($weight = 0.5, $default = false)->randomDigit();
// шанс 10% получить 'abc'
fake()->optional($weight = 0.9, $default = 'abc')->word();