ورود

View Full Version : تست نرم افزار



دانش آموز
دوشنبه 13 تیر 1390, 16:39 عصر
یکی از دیگر از مراحل چرخه تولید نرم افزار با متد RUP مرحله تست نرم افزار است و این مقاله در مورد تعریف واهداف تست و همچنین روشهای مختلف تست می باشد .
تعریف تست : تست فرآیند اجرای برنامه به قصد یافتن خطاهاستچ
اهداف تست : تست موفق تستی است که خطاهای کشف نشده را کشف می کند .
نکته : برای آنکه تست بیشترین بازدهی را داشته باشد باید توسط یک شخص ثالث بی طرف انجام شود
انواع مختلف تست :


تست عملکرد : تست نرم افزار از نظر درستی عملکرد , در این تست کامپوننتها و فرآیندهای مجزا می توانند خیلی سریع تر انجام شوند .
تست استرس :



برنامه در مقابل بار سنگین مثل مقادیر عددی پیچیده , مقادیر زیاد ورودی و مقادیر زیاد پرس و جو امتحان میشود .
فشار همزمان چند ایستگاه مختلف برای تست حافظه

هدف از این تست طراحی محیطی است که مخرب تر از محیطی که برنامه در دنیای واقعی و در شرایط نرمال با آن روبرو می شد .


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



محرمانه بودن
جامعیت
تصدیق هویت
مجوز دادن

می باشد .


تست واحد :این تست معمولا" توسط خود برنامه نویسان انجام می گیرد و تک تک ماژولها را در حین پیاده سازی تست می کنند

نکته : تست بار و گرافیک نمی تواند در این مرحله صورت گیرد و باید کاملا" پروژه تمام شده باشد .




تست تحمل بار : این تست می تواند شامل موارد زیر باشد .



زمان کار پیوسته با سیستم بدون خار ج شدن از نرم افزار (72 ساعت)
استفاده فعال همزمان از نرم افزار توسط چند کاربر
کارکرد نرم افزار با استفاده از حداکثر گنجایش بانک اطلاعاتی به این منظور جدول باید حاوی حداکثر تعداد پیش بینی شده رکورد باشد برای تست سرعت و زمان پاسخگویی سیستم



آزمون تحمل خرابی : این تست می تاند شامل موارد زیر باشد :



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



استراتژی جعبه سفید : این استراتژی توسط برنامه نویسان باید اعمال شود . برخلاف استراتژی جعبه سیاه (به دلیل شباهت با تست عملکرد از توضیح آن خودداری کردیم) این استراتژی با تست کدهای نرم افزاری و ساختمان داخلی نرم افزار سر و کار دارد .



بررسی سطر به سطر کد(code coverage) : در این حالت باید سیستم را به گونه ای اجرا و بررسی کنیم

که مطمئن شویم سطر به سطر کد برنامه حداقل یکبار اجرا شده است .


بررسی همه اشتباهها در کد برنامه (branch) : در کد برنامه باید تمام عبارتهای شرطی(if else ,switch case) را تک تک مورد بررسی قرار دارد بدین صورت که در یک عبارت if else هم قسمت if و هم قسمت else هر کدام به صورت مجزا یکبار اجرا شود .
بررسی همه حلقه ها در برنامه : حلقه ها در نرم افزار نقش اساسی دارند چون می توانند با اشتباه جزئی مقدار زیادی از منابع را مصرف کرد و برای مثال شرط خروج از حلقه به اشتباه هیچ وقت true نشود برای نمونه حلقه را برای ورودی بزرگتر تست کنید .
مدیریت خطای مطلوب : اگر به یک متد یک ورودی نامعتبر داده شود نمایش مطلوب خطا به کاربر چگونه است .

و در پایان تست ما گزارش انجام آزمون (TR) را داریم و هر ازمونگر موظف است نتیجه آزمون را اعم از مشاهده یا مشاهده اشکال در یک برگه TR تنظیم و گزارش نماید .


منبع (http://foadansary.persianblog.ir/)