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

Testing JSON Endpoints and Sanctum اختبار واجهات JSON ومصادقة Sanctum

إعادة تهيئة قاعدة بيانات الاختبار تلقائياً بسمة RefreshDatabase والتحقق من السجلات واستجابات JSON API وفق أحدث معايير إطار العمل Laravel 12 مع أمثلة وتطبيقات عملية متدرجة.
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

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

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

عند اختبار مسارات RESTful API، استخدم الدوال getJson و postJson و putJson و deleteJson لكي يرفق Laravel رأس الرسالة Accept: application/json تلقائياً. يمكنك أيضاً محاكاة مصادقة Sanctum مع تحديد قدرات الرمز عبر دالة Sanctum::actingAs، وفحص بنية وقيم المخرجات بدالة assertJson.

  • دوال طلبات JSON (JSON Request Helpers): ترمز دوال getJson و postJson البيانات بصيغة JSON وتضبط رؤوس التفاوض تلقائياً.
  • محاكاة رموز Sanctum (Sanctum Token Simulation): استدع دالة Sanctum::actingAs مع مصفوفة القدرات لاختبار مسارات API المحمية.
  • توكيدات بنية JSON (Payload Assertions): اربط دوال assertJson أو assertJsonPath لفحص القيم المتداخلة داخل مفتاح data.
PHP
use Laravel\Sanctum\Sanctum;

$user = User::factory()->create();
Sanctum::actingAs($user, ['posts:write']);
$this->postJson('/api/posts', ['title' => 'API'])
    ->assertStatus(201)
    ->assertJson(['data' => ['title' => 'API']]);