مهندسی نرم افزار

اصول اساسی تست نرم افزار

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

تایید (Verification): در این مرحله اطمینان حاصل می‌شود که آیا نرم‌افزار مورد نظر، با توجه به انتظار ما رفتار می‌کند یا خیر.
اعتبار سنج (Validation): این مرحله مشخص‌کننده این موضوع است که آیا نرم‌افزار نیازمندی‌ها را پاسخ‌گو هست یا خیر. .
انواع رویکرد تست دو رویکرد برای تست داریم: blackbox testing و whitebox testing. این دونوع مشخص‌کننده نحوه طراحی تست‌های ما هستند.
Blackbox Testing: در این رویکرد، تست تمامی مکانیسم‌های داخلی یک سیستم نادیده گرفته می‌شود و روی خروجی تولید شده تمرکز می‌شود. به این رویکرد تست functional نیز می‌گویند.
Whitebox Testing: در این رویکرد، تست ما با مکانیستم داخلی یک سیستم سرو کار داریم. به این نوع تست structural تست نیز گفته می‌شود. . انواع تست انواع مختلفی از تست وجود دارند که در زیر لیست آن‌ها را مشاهده می‌کنید:
.
Unit Testing: در این نوع تست ما یک واحد و یا یک گروه از واحدهای مرتبط با هم را تست می‌کنیم. این نوع تست زیر مجموعه Whitebox Testing است.

Integration Testing: این نوع تست به ما این امکان را می‌دهد که چند نوع کامپننت مختلف را کنار یکدیگر تست کنیم. در این صورت حتی ما می‌توانیم وابستگی‌های میان سخت‌افزار و نرم‌افزار را نیز بیازماییم. این دسته از تست‌ها زیر مجموعه تست‌های black box هستند.

Functional Testing: در این تست اطمینان حاصل می‌شود که عملکرد برنامه به درستی است. توجه شود که در این نوع تست برخلاف آزمون واحد ما می‌توانیم عملکرد یک سیستم را تست کنیم و نه فقط یک واحد را. این تست زیر مجموعه black box تست‌ها هستند.

System Testing: این نوع تست به ما اجازه می‌دهد که از عملکرد برنامه در محیط‌های مختلف اطمینان حاصل کنیم (مثل سیستم عامل‌های مختلف). این تست زیر مجموعه black box تست‌ها است.

Stress Testing: این نوع تست عملکرد برنامه را در شرایط نامطلوب مورد بررسی قرار می‌دهد. این تست زیر مجموعه black box تست‌ها است.

Performance Testing: تست عملکرد و کارایی که در مجموعه black box تست‌ها جای می‌گیرد به ما این اطمینان را می‌دهد که برنامه‌مان عملکرد و کارایی لازم را در یک مدت زمان مشخص داراست.

Usability Testing: این نوع تست زیر مجموعه black box تست‌ها است. این تست از دیدگاه مشتری انجام می‌شود و در واقع مشخص کننده فاکتورهای زیر است:

آیا برنامه کاربر پسند است؟
آیا برنامه ساده و قابل یادگیری است؟
آیا برنامه جذاب طراحی شده است؟
و …

Acceptance Testing: این نوع تست معمولا از طرف مشتری انجام می‌شود. هدف آن، مشخص کردن این است که آیا برنامه نیازهای مشتری را پاسخ می‌دهد و آیا برنامه همان چیزی که مشتری می‌خواهد هست یا خیر.

Regression Testing: این نوع تست به منظور صحت عملکرد سیستم بعد از تغییرات استفاده می‌شود و زیر مجموعه black box تست‌ها است.

Beta Testing: تستی است که توسط کاربر نهایی یا یک تیم خارج از تیم توسعه انجام می شود. هدف تست بتا پوشش دادن خطاهای غیرمنتظره است. این تست زیر مجموعه black box تست‌ها است.

ادامه مطلب

نمایش بیشتر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا