چرا انتظار مهم است: قابل اعتماد کردن تست های خودکار

به یاد دارم که روی پروژه ای کار می کردم که در آن یک مجموعه رگرسیون برای یک برنامه وب با استفاده از Cypress پیاده سازی می کردم. در ابتدا همه چیز به آرامی پیش می رفت و تست ها به خوبی پیش می رفت. با این حال، به زودی با یک وضعیت ناامید کننده مواجه شدم: برخی از آزمایشات بدون دلیل ظاهراً شروع به شکست کردند. اینطور نبود که تغییری ایجاد کرده باشم که باعث این امر شود، اما شکست ها همچنان ادامه داشت.

من زمان زیادی را صرف رفع اشکال کردم، سعی کردم مشخص کنم چه چیزی اشتباه رخ داده است، اما نتوانستم راه حلی پیدا کنم. بعد از مدتی تصمیم گرفتم استراحت کنم و روی کار دیگری کار کنم. خنده دار است که چگونه گاهی اوقات، وقتی چیزی که قبلاً کار می کرد ناگهان از کار می افتد، ممکن است امیدوار باشید که یک راه اندازی مجدد ساده – مانند خاموش کردن لپ تاپ خود و بررسی مجدد مشکل بعدا – بتواند آن را حل کند. متأسفانه این بار اینطور نشد.

مصمم به حل این مشکل، نشستم تا نحوه اجرای تست را در حالت headed مشاهده کنم. وقتی برنامه وب را مشاهده کردم که به بالا می چرخد ​​و دستوراتی را که نوشته بودم اجرا می کند، متوجه نکته مهمی شدم: وقتی آزمایش به صفحه خاصی هدایت شد، همه محتوا به درستی بارگیری نمی شد.

این لحظه موفقیت من بود! من متوجه شدم که تماس‌های شبکه به طور کامل قبل از انجام آزمایش برای انجام اقدامات در صفحه تکمیل نشده است. برای رفع این مشکل من یک …

Source link