در این مقاله قصد داریم نگاه عمیقتری به تست نرمافزار، شیوهها و کاربردهای آن داشته باشیم. اگر بخواهیم از تست نرم افزار تعریفی ساده داشته باشیم میتوان گفت" تست نرمافزار فرآیند اجرای یک برنامه کاربردی با هدف پیدا کردن اشکالات و متعاقبا بهبود کیفیت آن است". تست نرمافزار به عنوان يك فرايند كليدی در تضمين كيفيت سيستمهای نرم افزاری ايفاء نقش ميكند. در حال حاضر تست به عنوان يك صنعت در حوزه نرمافزار محسوب ميشود.
در سالهای اخير آمارهای شگفت آوری از سوی موسسه (NIST(National Institute of Standards and Technologyدرباره شكست سيستمهای نرم افزاری ارائه شده است. در كشور ايالات متحده، اين شكستها ساليانه حدود 59.5 ميليارد دلار به اقتصاد اين كشور صدمه میزند. طبق بررسيهای انجام شده با بكارگيری تست در تمام فازهای توليد نرم افزار 22.2 ميليارد دلار از اين خسارت را میتوان كاهش داد. طبق آمارهای ارائه شده از سوی موسسه (IDC(International Data Corporation، چهل درصد از بودجه نرم افزارها صرف تست آن میگردد.در کشور ما نیز، با توجه به رشد فناوری اطلاعات و ارتباطات در طی چند سال گذشته و توليد بومی بسياری از نرم افزارهای مورد نیاز، نياز به اين فرايند بيش از پيش احساس شده و در صورت عدم توجه به آن، كاهش كيفيت سيستمهای ارائه شده، عدم رضايت مشتری و در نهايت از دست دادن بازار را به همراه خواهد داشت.
امروزه بسیاری از کارها در زندگی شخصی، صنعت، امور نظامی و غیره به نرم افزارها سپرده شده است. گاهی یک اشتباه کوچک نرمافزاری میتواند سبب خسارات جبران ناپذیری شود. برای تشریح موضوع به چند نمونه اشاره میگردد.
تنها 26% از پروژه های نرم افزاری دنیا با موفقیت اجرا میشوند. معیار های موفقیت پروژه عبارتنداز:
بسیاری از پروژههای تولید نرم افزار با شکست مواجه میشوند، هزینه بالایی صرف پروژههای شکست خورده میگردد.
برای تضمین کیفیت نرم افزار با توجه به شرایط، نوع و کاربرد آن از روشهای مختلفی استفاده میشود. در یک تقسیم بندی کلی می توان شیوههای تضمین کیفیت نرم افزار را به سه دسته تقسیم بندی نمود.
1. روشهای پیشگری از خطا از طریق حذف ریشه خطا
2. روشهای کاهش خطا از طریق تشخیص دلیل خطا
3. روشهای حبس خطا از طریق موضعی کردن خطا
3.تعریف کیفیت نرم افزار
کیفیت نرم افزار موضوعی است که مورد توجه تمامی تولید کنندگان و مصرف کنندگان سامانههای نرم افزاری است. کیفیت نرم افزار از دیدگاههای مختلفی قابل بررسی است.
1. کیفیت از دیدگاه کاربر
2. کیفیت از دیدگاه ساخت
3. کیفیت از دیدگاه محصول