توضیح درباره متد assertMissingExact در Laravel 11
متد assertMissingExact در کتابخانه Laravel 11 به ما این امکان را میدهد که بررسی کنیم آیا یک مقدار خاص در خروجی JSON وجود ندارد یا خیر. این متد به ویژه در تستهای واحد (unit tests) مفید است، جایی که دقت و صحت دادههای خروجی اهمیت زیادی دارد.
بیایید در نظر بگیریم که شما یک API ساختهاید که برخی از اطلاعات کاربران را به صورت JSON برمیگرداند. حالا ممکن است بخواهید مطمئن شوید که یک ویژگی خاص (مثلاً email
) در پاسخ JSON وجود ندارد. با استفاده از این متد میتوانید به راحتی این کار را انجام دهید.
این تابع به شما این امکان را میدهد که به سادگی و با خوانایی بالا تست کنید که آیا یک مقدار خاص در JSON وجود ندارد. در عوض، اگر بخواهید که فقط بفهمید که مقداری در JSON وجود دارد یا خیر، متد assertSee انتخاب بهتری خواهد بود.
به عنوان مثال، اگر شما بخواهید بررسی کنید که مقدار email
در JSON خروجی شما نباشد، میتوانید از assertMissingExact مانند زیر استفاده کنید. به این ترتیب میتوانید از صحت و سلامت پاسخ API اطمینان حاصل کنید.
نمونه کد نمایش متد assertMissingExact
$response = $this->get('/api/users/1');
$response->assertJsonMissingExact([
'email' => '[email protected]',
]);
توضیحات کد
کد 1:
$response = $this->get('/api/users/1');
این خط درخواست HTTP به آدرس /api/users/1 را میسازد و نتیجه را در متغیر
$response
ذخیره میکند.کد 2:
$response->assertJsonMissingExact([
'email' => '[email protected]',
]);
این خط بررسی میکند که آیا در خروجی JSON عدد
email
با مقدار [email protected]
وجود ندارد یا خیر.