امروز رفتم بیرجند تا برنامه ای را که مدتهاست درگیر آن بودیم و راجع به ذخیره فیلم های ویدئومتری ، بازبینی آنها و ثبت خطاها برای آب و فاضلاب خراسان جنوبی بود را تحویل بدهم.
روی سیستم خودم و سیستم اصلی آنها هم به خوبی نصب شد اما روی لپ تاپی که قرار بود فردا با خود به تهران ببرند و این نرم افزار را هم جزء کارهای انجام شده نمایش بدهند ، نصب شد اما با کلیک بر روی آن ، پیام معروف ویندوز مبنی بر اینکه " خطایی رخ داده است و برنامه باید بسته شود. اگر مایلید اطلاعات خطا به مایکروسافت ارسال شود؟ " و دکمه معروف عدم ارسال (Don’t Send) . بدترین خطایی که می توانست رخ دهد چون هیچ گونه اطلاعاتی راجع به خطا به ما نمی داد.
اول از همه قسمت بازبینی خطاهای (Event Viewer) ویندوز را نگاه کردم و دیدم فقط توضیحی که ارائه داده این است که خطایی در توسط محیط اجرایی دات نت دو ایجاد شده است . به ذهنم رسید سرویس پک دات نت دو را نصب کنم . کردیم و نشد . دات نت سه و نیم را نصب کردم ، باز هم درست نشد.
به ذهنم رسید ویندوز را عوض کنم و قرار شد لپ تاپ را ببرم و عصری برایشان دوباره بفرستم . اما در آخرین لحظات به ذهنم رسید خود ویژوال استودیو را هم نصب کنم و از روی سورس برنامه ، آنرا اجرا کنم ببینم خطا کجاست . سریع ویژوال استودیو را با کمترین گزینه ها نصب و برنامه را اجرا کردم . خطا را یافتم . خطا از یکی از کامپوننت هایی پخش فیلمی بود که کرک نشده بود و هنگام بالا آمدن برنامه ، خطا تولید می کرد و برنامه بسته می شد.
کرک آنرا نصب کرده بودم اما به نظر بی دقتی کرده بودم چون کرک نشده بود . کرک آنرا نصب کردم و برنامه به خوبی اجرا شد.
کافی بود در تمام توابع اصلی و حتی بارگذاری فرم اصلی از مدیریت خطا (Try Catch) استفاده می کردم و خطای تولید شده را یا به کاربر نشان می دادم و یا در فایلی (مثلاً Log.txt) ذخیره اش می کردم تا به راحتی بتوانم خطا را ردیابی کنم.
از طرف دیگر ، همیشه فرض می کردیم که کرک کامپوننت مورد نظر همیشه اجرا می شود و حتی یکدفعه این موضوع را تست نکردیم که اگر احیاناً کرک به درستی اجرا نشده باشد، نرم افزار چه واکنشی نشان خواهد داد و چه خطایی تولید خواهد شد.
به خصوص امروزه که تست نرم افزار از اهمیت زیادی برخوردار شده است و در محیط های برنامه نویسی امکانات خاصی راجع به همین موارد در نظر گرفته شده است اما آدمیزاد تا سرش به سنگ نخورد ، درس نمی گیرد...
مطالب تصادفی
- معرفی نرم افزاز VirtualBox - راهی بازمتن به سوی مجازی سازی
- فهرست نرم افزار های رایگان و کاربردی
- معرفی نرم افزار - پیام رسان صوتی تصویری ooVoo
- معرفی نرم افزار - کتابخانه ای برای مدیریت کدها
- مقایسه ابزارهای گزارشگیری در دات نت - کریستال ریپورت و استیمول سافت
- معرفی نرم افزار Heidisql - مدیریت پایگاه داده MySQL و SQL Server به صورت همزمان
- معرفی نرم افزار - افزونه مترجم برای فایرفاکس




