You are here:

تست نرم افزار - ضرورتی فراموش شده

فرستادن به ایمیل چاپ

Tags: تجربیات | تخصصی | تست | وب

چند مدت اخیر فشار کاری سنگینی را تحمل کردم ( برای طراحی و مدیریت  یک سایت رصد اخبار محبوب دنیا در کشورها و زبانهای مختلف ) که بالاخره بعد از چندماه به ثبات اولیه رسید و الان خطاهای پنهان آن است که  ما را حسابی  به خود مشغول کرده است .

شما الگوریتمی را خیلی خوب طراحی می کنید و کد مربوطه را می نویسید و برنامه هم کار می کند . شما هم خوشحال که مشکل را حل کرده اید اما ناگهان مشتری از شما سوال می کند مثلا این خبر محبوب سایت بی بی سی چرا روی صفحه اول سایت ما نیست ؟  و بررسی می کنی و می بینی حق با مشتریست ... از طرفی هر چی فکر می کنی و بررسی می کنی می بینی همه جای کد درست است و حالا باید بگردی و ببینی کجای کار می لنگد ..

می بینی فرض را بر این گذاشته بودی که داده ها بدون خطا در بانک اطلاعاتی ثبت می شوند اما در لود بالا این فرض ممکن است نادرست باشد .. می بینی فرض را بر این گذاشته بودی که اگر خطا رخ دهد بخش بررسی خطا (try/catch) آنرا مدیریت خواهد کرد و بعد می بینی تابعی که صدا زده ای نه خطا برگردانده و نه نتیجه ای ..... خلاصه توی این مدت اخیر لزوم استفاده و بکارگیری اصول تست نرم افزار را با تمام وجود احساس کرده ام .

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

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

قصد دارم تجربیات این یکسال اخیر در حوزه مهندسی نرم افزار و بانکهای اطلاعاتی جدید (مانگو ، ردیس ، کاساندرا و گراف دیتابیس ) را به صورت منظم در سایت قرار دهم . شاید که به کار آید ....

نظرات (3)Add Comment
0
اهمیت تست
نویسنده افشار محبی, دسامبر 04, 2013
من هم کم از این تجربه‌ها ندارم. اهمیت تست و تست واحد وقتی معلوم می‌شود که برنامه زیر بار رفته و دیگر نوشتن تست برای آن به این راحتی‌ها نیست. اهمیت تست واحد یک جای دیگر هم خیلی معلوم می‌شود. آن وقتی است که برنامه بدون ایراد و اشکال کار می‌کند اما می‌خواهید در آن تغییراتی ایجاد یا مواردی را اضافه کنید. معلوم نیست اضافه کردن این تغییرات چیزی را خراب خواهد کرد یا نه. در حالی که اگر تست واحد صحیح و درست و به اندازه کافی وجود داشته باشد، ترس از تغییرات به حداقل خواهد رسید.
0
حقیقتی خاموش!
نویسنده ایمان, دسامبر 05, 2013
با سلام خدمت استاد عزیز
به این مشکل بارها خوردم و همیشه فک می کردم که عجله و کم دقتی موجب چنین اشتباهاتی میشه،هر چند در موارد بعدی رعایت می کنم ولی باز هم مواردی ....
ممنون میشم این مقاله رو در صورت امکان گسترش بدید
0
...
نویسنده حمیدرضا شکارچی, سپتامبر 10, 2014
اگه بامعماری mvc بریم جلو گسترش و تست آسونتر میشه؟؟
بنائی : معماری سه لایه کدها را منظم تر می کنه و مدیریت را آسانتر اما نیاز به مرحله تست را از بین نمی بره .

نظرتان را بنویسید
کوچکتر | بزرگتر

busy
آخرین بروزرسانی ( سه شنبه ، 12 آذر 1392 ، 19:15 )