انتقل إلى محتوى الدرس

Isolated Testing Environment Setup إعداد بيئة الاختبار المعزولة بأمان

إعداد بيئة الاختبار المعزولة والفرق بين اختبارات الوحدات واختبارات الميزات وتشغيلها بأمر php artisan test.
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

يأتي إطار Laravel مزوداً بملف phpunit.xml مُعد مسبقاً يضبط بيئة التشغيل تلقائياً على APP_ENV=testing ويحول سواقات الكاش والجلسات والبريد إلى مصفوفات مؤقتة في الذاكرة. يضمن هذا العزل الصارم أن تشغيل الاختبارات الآلية لن يعدل بيانات التطوير الحقيقية أو يرسل رسائل فعلية أبداً.

  • بيئة الاختبار التلقائية (Automatic testing Env): يتجاوز مشغل الاختبارات متغيرات الملف البيئي باستخدام وسوم env المعرفة في phpunit.xml.
  • قاعدة SQLite في الذاكرة (In-Memory SQLite Option): يتيح ضبط DB_DATABASE=:memory: تشغيل الاختبارات بسرعة فائقة داخل الذاكرة العشوائية.
  • سواقات المصفوفة المؤقتة (Array Drivers): تُضبط سواقات الكاش والجلسات على array لضمان بدء كل اختبار بحالة نظيفة تماماً.
مخطط معماري يوضح أساسيات الاختبارات الآلية في Laravel عبر PHPUnit و Pest في إطار العمل Laravel 12
PHP
<!-- phpunit.xml environment overrides -->
<php>
    <env name="APP_ENV" value="testing"/>
    <env name="CACHE_STORE" value="array"/>
    <env name="MAIL_MAILER" value="array"/>
</php>