تست نرم افزار قسمت نهایی از مراحل تولید یک نرم افزار است. بسیاری از پروژه های کوچک و متوسط را پس از برنامه نویسی می توان به صورت دستی تست کرد تا مشکلات احتمالی پیدا و برطرف شوند اما در پروژه های بزرگ به دلیل گستردگی نرم افزار، تست عملکرد نرم افزار بسیار زمان بر و خسته کننده است. به همین دلیل مبحث تست خودکار یا Automated Testing در اینجا اهمیت پیدا می کند.