خرید کتاب, فروش کتاب, فروش آنلاین, کتاب دانشگاهی, فروشگاه کتاب, چاپ کتاب, تبدیل پایان نامه به کتاب, ارسال کتاب, بانک کتاب, فروش پستی کتاب, پیک کتاب, فروش نرم افزار, چاپ تیراژ کم, فروشگاه اینترنتی کتاب ایران

مقدمه ای بر آزمون نرم افزار

محصول جدید

این کتاب به شرح کامل آزمون نرم‌افزار که یکی از بنیادی‌ترین فازهای چرخه‌ تولید نرم‌افزار است، می پردازد.

جزییات بیشتر

تولید کننده
بعثت

300,000 ریال

افزودن به لیست دلخواه

مشخصات

نویسنده/ نویسندگان :پل امن- جف افت
مترجم/ مترجمین :حسن فرزانه- سینا بخشایشی
تعداد صفحات :380
زبان :فارسی
قطع کتاب :وزیری
جلد :شومیز
نوع کاغذ :تحریر
چاپ متن :تک رنگ
شابك :0-25ـ 7084ـ600ـ978

اطلاعات بیشتر

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

آموزش این کتاب به‌صورت عملی است و روش‌های آن تکنیکال می‌باشد.

تست نرم افزار به فرایند ارزیابی نرم افزار به منظور اطمینان از عملکرد صحیح آن در رویداد هایی مختلفی که ممکن است در دوره استفاده از نرم افزار با آن مواجه شود می باشد و به عبارت دیگر پیدا کردن خطا هایی احتمالی یک نرم افزار برای عملکرد درست ، صحیح و بهینه آن در طول استفاده از آن است. هر چقدر نرم افزار بتواند با رویداد ها مختلف به صورت مطلوب تر و قابل پذیرش تری چه از نظر عملکرد و چه از راحتی کاربر داشته باشد میتوان انتظار داشت نرم افزار دارای عملکرد بهتری می باشد. تست خوب: احتمال پیدا کردن خطاهای کشف نشده توسط ارزیابی زیاد است. تست موفق: که حداقل یک خطای کشف نشده را بیابد تست فقط وجود خطا را نشان می‌دهد و نه عدم وجود آن را. پیدا نشدن خطا در تست به معنای بدون خطا بودن برنامه نیست. اصول تست با توجه به نیازمندیهای کاربر برنامه ریزی قبل از اجرا (test plan) نوشتن برنامه تست قانون پارتو %۸۰ خطاهای کشف نشده در ۲۰٪ کد است تست باید از اجزای کوچک شروع شود ممکن نیست (exhaustive) تست کامل برای موثر بودن باید توسط شخص ثالث بی طرف انجام شود معیارهای تست پذیر بودن نرم‌افزار:

قابلیت اجرا Operability – هرچه نرم‌افزار بهتر کار کند و در محیط‌های بیشتری قابل اجرا باشد، n بهتر قابل ارزیابی است
مشاهده پذیری Observability – قابلیت مشاهده نتایج ارزیابی
کنترل پذیری Controlability – قابلیت اجرای تستهای خودکار (مثل امکان اجرای خودکار تست‌های واحد توسط jUnit برای زبان جاوا)
تجزیه پذیری Decomposability – ارزیابی می‌تواند هدفمند تر شود
سادگی Simplicity – کاهش پیچیدگی معماری و منطق برنامه
پایداری Stability – برای ارزیابی تغییرات کمی بخواهد
درک پذیری Understandability – قابلیت درک طراحی و وابستگیهای بین اجزا
سطوح مختلف تست

تست واحد (Unit testing)
تست یکپارچه سازی افزایشی
تست یکپارچه سازی (Integration testing)
تست سیستم (System testing)
تست پذیرش (Acceptance testing)
تست آلفا
تست بتا

تست سیستم به منظور بررسی عملکرد نرم‌افزار بر روی پلتفرم‌های مختلف انجام می‌شود و نرم‌افزارهای OS پلتفرم: سخت‌افزار + نرم‌افزار (شامل کاربردی مورد نیاز برنامه) به منظور اطمینان از اینکه برنامه با مولفه‌های دیگر محیط اجرایش به خوبی کار می‌کندبه منظور اطمینان از اینکه نرم‌افزار ارائه شده در محیط مورد نظر قابل استفاده است. مثالی از مشکل حاصل از انجام ندادن تست سیستم نرم‌افزار بازی شیر شاه دیزنی Disney’s Lion King Game در پاییز سال ۱۹۹۴ شرکت دیزنی اولین CD بازی خود  تحت عنوان شیر شاه Lion King که بر اساس کارتونی به همین نام ساخته شده بود را وارد بازار کرد. بسیاری از شرکتهای دیگر تا آن زمان اقدام به ساخت بازیهای رایانه‌ای کرده بودند اما این اولین بار بود که شرکت دیزنی وارد این تجارت شده بود. دیزنی برای فروش این بازی دست به تبلیغات گسترده‌ای زد و در نتیجه این محصول با فروش بسیار بالایی مواجه شد. اما اتفاقات پس از آن تبدیل به کابوسی برای این شرکت شد. در ۲۶ دسامبر، روز پس از کریسمس تلفن‌های بخش پشتیبانی مشتریان شرکت دیزنی شروع کرد به زنگ زدن و زنگ زدن و زنگ زدن! متصدیان پاسخگویی به تماس‌ها با خیل عظیمی از والدین عصبانی با بچه‌های گریان مواجه شدند که ادعا می کرند نرم‌افزار مزبور کار نمی‌کند. این خبر به سرعت در مطبوعات و تلویزیون نیز پخش شد و کریسمس آن سال را برای بسیاری از پرسنل دیزنی تلخ کرد. علت چه بود؟ پس از بررسی مشخص شد که دیزنی نرم‌افزار خود را بر روی بسیاری از مدل‌های PC تست نکرده بود و در نتیجه تنها بر روی سیستمهایی کار می‌کرد که برنامه نویسان دیزنی روی آن سیستم‌ها نرم‌افزار خود را توسعه داده بودند و نه دستگاههای متداولی که عموم مردم از آن استفاده می‌کردند. مطبوعات این اشتباه دیزنی را یک حماقت بزرگ نرم افزاری، لقب دادند!

****

آزمون نرم‌افزار

****

روشهای تست نرم افزار:

تست جعبه سفید (White-Box test)
نام دیگر این روش، تست جعبه شیشه ای است و با استفاده از ساختارهای درونی یک قطعه، حالات تست را استخراج میکند. در این روش سعی میشود حالات تست به نحوی استخراج شوند که موارد زیر تضمین گردند:

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

تست جعبه سیاه (Black-Box test)
این آزمایش جایگزین آزمایش جعبه سفید نمی‌باشد بلکه مکمل آن است. وخطاهایی متفاوت با آن را تست می‌کند. شما نرم‌افزاری را که به آن نیاز داشتید را تهیه می‌کنید و بر روی سیستم خود نصب می‌کنید، شما در اکثر موارد بعد از نصب برنامه فقط یک نسخه اجرایی آنرا در سیستم خود خواهید داشت، و هیچ دسترسی به سورس کد و منابع دیگر برنامه نخواهید داشت. سیستم نرم‌افزاری موجود برای شما مانند یک جعبه سیاه است که شما نمی‌توانید دورن آنرا مشاهده کنید و به آن دسترسی داشته باشید. استراتژی جعبه سیاه دقیقاً از این دیدگاه برنامه را مورد آزمایش قرار می‌دهد، یعنی با این پیش فرض که شما هیچ اطلاعاتی از کد و طراحی داخلی برنامه ندارید. حالا هیچ اطلاعاتی از کد و طراحی برنامه در اختیار ما نیست، پس چگونه می‌توان به صحت کارکرد برنامه پی برد؟ جواب خیلی ساده است، با تمرکز بر ورودی‌ها و خروجی‌ها، برای اینکار آزمایش کننده نرم‌افزار به مستندات نرم‌افزار مراجعه می‌کند تا مشخص کند که سیستم در مقابل یک عمل خاص چه پاسخی را باید بدهد. سپس داده‌های را برای هر کدام از عملیات انتخاب می‌کند و رفتار سیستم را در مقابل آن داده‌ها با رفتار واقعی سیستم که در مستندات وجود دارد مقایسه و بررسی می‌کند.

در یک استراتژی آزمایش جعبه سیاه ما عموماً موارد زیر را مورد بررسی و آزمایش قرار می‌دهیم:

بررسی اینکه سیستم نیازمندهای عملیاتی و غیر عملیاتی را تامین می‌کند یا نه.
اعتبارسنجی ورودیها
بررسی مقادیر مرزی برای متغیرها: به یک متغیر مقداری کمتر از حداقل مقداری که می‌تواند قبول کند یا بیشتر از حداکثر مقداری که می‌تواند قبول کند می‌دهیم و سیستم را در این شرایط تست می‌کنیم.
بررسی خروج‌های سیستم: یک مجموعه از ورودهای صحیح با خروج‌های ...

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

نقد و نظرات

ویژگی ها

پدیدآورندگان

نویسنده/ نویسندگان : پل امن- جف افت
مترجم/ مترجمین : حسن فرزانه- سینا بخشایشی

مشخصات فنی

قطع کتاب : وزیری
جلد : شومیز
نوع کاغذ : تحریر

Other Features

تعداد صفحات : 380
زبان : فارسی
چاپ متن : تک رنگ
شابك : 0-25ـ 7084ـ600ـ978

نوشتن نقد و نظر

مقدمه ای بر آزمون نرم افزار

مقدمه ای بر آزمون نرم افزار

این کتاب به شرح کامل آزمون نرم‌افزار که یکی از بنیادی‌ترین فازهای چرخه‌ تولید نرم‌افزار است، می پردازد.

30 محصولات دیگر در همان شاخه: