تکنولوژی نوین اینترنتی
لاراول از PHPUnit برای نوشتن تستها استفاده میکنه. ما میتونیم تستهای مختلفی برای کنترلرها و مدلها بسازیم:
فایل در مسیر
tests/Feature/PostControllerTest.phpایجاد میشه.
فایل در مسیر
tests/Unit/PostModelTest.phpساخته میشه.
مثلاً فرض کن مدل Post یک ارتباط belongsTo با User داره:
| نوع تست | ابزار | مسیر تستها |
|---|---|---|
| کنترلر | Feature Test | tests/Feature/ |
| مدل | Unit Test | tests/Unit/ |
فرض کنیم API برای مدیریت Post داریم، و کاربرها با استفاده از JWT لاگین میکنن.
از پکیج tymon/jwt-auth استفاده میکنیم:
مدل User باید از JWTSubject پیروی کنه.
tests/Feature/PostApiJwtTest.php
تمام درخواستها با Authorization: Bearer TOKEN ارسال میشن.
برای routeهای محافظتشده از middleware زیر استفاده کن:
| عملیات | مسیر | متد | توضیح |
|---|---|---|---|
| ایجاد پست | /api/posts | POST | با توکن JWT |
| لیست پستها | /api/posts | GET | دریافت JSON |
| ویرایش پست | /api/posts/{id} | PUT | با احراز هویت |
| حذف پست | /api/posts/{id} | DELETE | حذف امن |