تست کارکردی

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

تکنیک‌های مبتنی بر گراف یا فلوچارت همچون line and branch coverage

تکنیک‌های مبتنی بر منطق همچون logic and predicate coverage

تکنیک‌های مبتنی بر افراز فضای ورودی همچون each choice, pair-wise, k-wise

تکنیک‌های مبتنی بر state machine

سایر تکنیک‌ها همچون random testing، ad-hoc testing و exploratory testing

تست کارکردی

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

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

A Practitioner's Guide to Software Test Design

Introduction to Software Testing

Systematic Software Testing

خودکارسازی تست‌های کارکردی، معمولا در دو‌لایه test procedure automation و test case automation صورت می‌گیرد. در لایه اول، گام‌های مورد نیاز برای اجرای تست‌های کارکردی خودکارسازی می‌شوند (که معمولا به آنها test-script می گویند) و در لایه دوم، تولید موارد تست طبق تکنیک‌های مختلف خودکارسازی می‌گردد.


شرکت مهندس پیشگان آزمون افزار یاس، ابزارهای پیشرفته زیر را در حوزه تست کارکردی ارائه می‌دهد:

SOATest و Ranorex.