شرح صفوف ومحتوى الفقرة
ينبغي لاختبارات الميزات التأكد من قيام المتحكم بإطلاق المهمة الخلفية أو إرسال البريد دون تشغيل عامل الطابور فعلياً أو الاتصال بخادم SMTP. يقوم استدعاء Queue::fake أو Mail::fake باستبدال الخدمة الحقيقية في الحاوي بكائن مراقبة يسجل ما تم إطلاقه للتحقق منه برمجياً.
- محاكاة الطوابير (Queue::fake): استدع دالة Queue::fake قبل الطلب، ثم تحقق من دفع المهمة عبر دالة Queue::assertPushed.
- محاكاة البريد (Mail::fake): استدع دالة Mail::fake قبل الطلب، ثم تأكد من جدولة الرسالة عبر دالة Mail::assertSent.
- محاكاة التخزين والأحداث (Storage & Event Fakes): استخدم دالة Storage::fake لاختبار رفع الملفات ودالة Event::fake لفحص إطلاق الأحداث.
PHP
use App\Jobs\ProcessPodcast;
use Illuminate\Support\Facades\Queue;
Queue::fake();
$this->postJson('/api/podcasts', ['title' => 'Ep 1']);
Queue::assertPushed(ProcessPodcast::class);