برای رفع خطا و بررسی تست مربوطه، شما باید به فایل تست مربوطه مراجعه کنید و کد آن را بررسی کنید تا ببینید کدام قسمت از کد دچار مشکل شده است. برای بررسی خطاها، میتوانید از دستورات دیباگینگ PHPUnit استفاده کنید، مانند:
./vendor/bin/phpunit --filter testMethodName
که در آن testMethodName نام متد کلاس تست مورد نظر شما میباشد. که در اینجا متد سوم تست شما طبق علامتهای مربوطه به مشکل خورده.با اجرای این دستور، شما میتوانید خطای دقیقتری را ببینید که شامل نام تست، خط خطا و پیغام خطا میباشد. پس از شناسایی مشکل، باید آن را برطرف کنید و تست را مجدداً اجرا کنید تا مطمئن شوید که هیچ خطایی وجود ندارد.
آریانا کرمانی۲۵ فروردین ۱۴۰۲، ۰۸:۰۰
استاد هنوز هم اون ارور رو دارم.
کل طابع تو از اول نوشتم اما هنوز مشکل داره.
امکانش هست کد رو بهتون بدم ایرادش رو بهم بگید؟
یگانه سیف۲۵ فروردین ۱۴۰۲، ۱۱:۵۴
کد تست و مواردی که در تست استفاده شده اسکرین بدید.
آریانا کرمانی۲۵ فروردین ۱۴۰۲، ۱۳:۱۷
استاد دیگه چی رو بفرستم؟
یگانه سیف۲۶ فروردین ۱۴۰۲، ۰۲:۲۶
سینا عزیز
برای موفق شدن تست شما باید در متد getconfig یک نوع از exeption لاین قبل رو throw کنید تا expect شده بشه.
چون ما داریم میگیم بررسی کنه این خطا پرتاب میشه یا نه.
در متد get configs:
thrownew DatabaseConnectionException('error');
آریانا کرمانی۲۶ فروردین ۱۴۰۲، ۱۹:۳۸
استاد بازم رفع نشد?
یگانه سیف۲۶ فروردین ۱۴۰۲، ۲۳:۰۹
بررسی شد اوکی بود
فایل تست پیوست شد.
لاین هایی که کامنت شده هم میتونید بجای throw کردن قبل متغیر config بررسی کنید اما برای هندل شدن ارور موارد کامنتی باید هندل رو انجام بدید.
آریانا کرمانی۲۷ فروردین ۱۴۰۲، ۱۷:۱۵
مرسی استاد بابت عیب یابی.
ولی میشه یکم بیشتر توضیح بدید چون نتونستم درست متوجه بشم
یگانه سیف۲۷ فروردین ۱۴۰۲، ۱۷:۲۰
زمانی که ما از متد expect exeption استفاده میکنیم میگیم که اکر در دستور بعدی این اکسپشن اتفاق افتاد اوکی بده.
در کد بالا ما داریم میگیم که اگر ریکوئست بدون دیتا برای ایجاد کاربر ارسال شد طبق وب سرویس استاتوس صفر برگردونده بشه و ما هم در متد sendRequest یک درخواست بدون دیتا ارسال کردیم به api؛اگر صفر برگشت اکسپشن ترو بشه و طبق این تست اوکی میشه.