تست نرم افزار یکی از راههای اطمینان بیشتر به نرم افزار، برای ارائه نهایی آن به بازار است. تست نرم افزار از بخشها و قسمتهای مختلفی تشکیل شده است که به ترتیب خاصی مورد توجه قرار میگیرند. در این مقاله قصد داریم به بررسی روند تست و از همه مهمتر تستهای آلفا و بتا بپردازیم.
طبق نوشتهی ویکی پدیا یک تست از مراحل زیر تشکیل میشود:
تست واحد : تست واحد در این سایت، به طور مکرر توسط فریمورکهای مختلفی مورد توجه قرار گرفته است و هدف آن تست برنامه به صورت قطعات کوچک است تا اطمینان پیدا کنیم آن تکه کد طبق انتظار ما جلو میرود. این تست حتی در آینده هم برای دنبال کردن باگها، کار ما را سادهتر میکند.
تست یکپارچه: هدف تست یکپارچه، بررسی عملکرد برنامه بعد از قرار گرفتن همهی تکهها در کنار هم هستند و این اطمینان را میدهد که برنامه عملکرد مثبتی دارد.
تست رابط جز: هدف این تست بررسی ارتباط و دادههای بین قسمتها و اجزای مختلف یک سیستم یا ارتباط زیر سیستمها با یکدیگر در یک سیستم بزرگتر است.
تست سیستم: تست سیستم برای بررسی عملکرد برنامه در سیستمهای مختلف است. اینکه برنامه در محیطهای اجرایی مختلف چگونه عمل میکند و در این شیوه باید قابلیتهای مختلف برنامه را در محیطها و ابزارهای مختلفی که برنامه استفاده میکند سنجید.
تست پذیرش عملکرد: یا اصطلاحا OAT، جهت اطمینان از عملکرد سیستم، برای ارائه نهایی به کار میرود که در اینجا دو آزمون آلفا و بتا صورت میگیرند.
تست آلفا Alpha در داخل خود سازمان توسط توسعه دهندگان که مسئول بررسی و تست نرم افزار هستند اتفاق میافتد. شکل زیر به خوبی جایگاه تست آلفا را در میان تستها توضیح میدهد.
فاز اول: فاز اول داخل تیم اصلی، توسط توسعه دهندگان هست تا اصلیترین باگها به سرعت رفع و حل شوند.
در فاز دوم برنامه به دست توسعه دهندگان واحد تضمین کیفیت Quality Assurance - QA مورد تست و ارزیابی قرار میگیرد.
تست آلفا قبل از عرضه عمومی اصطلاحا Commercial Off-the Shelf-COTS صورت میگیرد و قبل از تست بتا میباشد.
تست بتا Beta توسط کاربران نهایی نرم افزار و گاها کاربران شناخته شدهی محصول انجام میگیرد. این تست به منظور بررسی و ارزیابی عملکرد نرم افزار ، پایداری ، سازگاری ، میزان اطمینان به نرم افزار صورت میگیرد. تست بتا این ارزش را برای نرم افزار میآورد تا توسط کاربران اصلی و در محیطهای واقعی به طور وسیعتری مورد بررسی قرار گیرد تا بتواند چرخه تست نرم افزار را با موفقیت به اتمام برساند. همچین به توسعه دهنده کمک میکند تا حجم ورودیهای عظیمی را جمع آوری تا در آینده برای نسخهها و پشتیبانیهای آتی استفاده کند.
تصویر زیر جایگاه تست بتا را در روند تست نشان میدهد:
هزینه تست
تعداد شرکت کنندگان در این تست
نحوه ارسال به کاربر ( که امروزه بیشتر از طریق اینترنت صورت میگیرد)
مدت زمان تست
از نکات مهم در این تست میتوان گفت که طول دوره تست آلفا، بیشتر از تست بتاست که به طور متوسط 3 تا 5 برابر تست بتا طول میکشد و خود تست بتا، عموما در حد چند هفته و گاها تا چند ماه میباشد.
در صورتیکه تست آلفا با موفقیت بیرون داده شود، وارد نسخه بتا میشود و بعد از اتمام تست بتا وارد ریلیز نهایی میشود. تست آلفا با توجه COTS گفته شده میتواند کاربران خاص و محیط خاص خود را داشته باشد.
طبق نوشتهی ویکی پدیا یک تست از مراحل زیر تشکیل میشود:
تست واحد : تست واحد در این سایت، به طور مکرر توسط فریمورکهای مختلفی مورد توجه قرار گرفته است و هدف آن تست برنامه به صورت قطعات کوچک است تا اطمینان پیدا کنیم آن تکه کد طبق انتظار ما جلو میرود. این تست حتی در آینده هم برای دنبال کردن باگها، کار ما را سادهتر میکند.
تست یکپارچه: هدف تست یکپارچه، بررسی عملکرد برنامه بعد از قرار گرفتن همهی تکهها در کنار هم هستند و این اطمینان را میدهد که برنامه عملکرد مثبتی دارد.
تست رابط جز: هدف این تست بررسی ارتباط و دادههای بین قسمتها و اجزای مختلف یک سیستم یا ارتباط زیر سیستمها با یکدیگر در یک سیستم بزرگتر است.
تست سیستم: تست سیستم برای بررسی عملکرد برنامه در سیستمهای مختلف است. اینکه برنامه در محیطهای اجرایی مختلف چگونه عمل میکند و در این شیوه باید قابلیتهای مختلف برنامه را در محیطها و ابزارهای مختلفی که برنامه استفاده میکند سنجید.
تست پذیرش عملکرد: یا اصطلاحا OAT، جهت اطمینان از عملکرد سیستم، برای ارائه نهایی به کار میرود که در اینجا دو آزمون آلفا و بتا صورت میگیرند.
تست آلفا Alpha در داخل خود سازمان توسط توسعه دهندگان که مسئول بررسی و تست نرم افزار هستند اتفاق میافتد. شکل زیر به خوبی جایگاه تست آلفا را در میان تستها توضیح میدهد.
تست آلفا در دو فاز انجام میگیرد:
فاز اول: فاز اول داخل تیم اصلی، توسط توسعه دهندگان هست تا اصلیترین باگها به سرعت رفع و حل شوند.
در فاز دوم برنامه به دست توسعه دهندگان واحد تضمین کیفیت Quality Assurance - QA مورد تست و ارزیابی قرار میگیرد.
تست آلفا قبل از عرضه عمومی اصطلاحا Commercial Off-the Shelf-COTS صورت میگیرد و قبل از تست بتا میباشد.
تست بتا Beta توسط کاربران نهایی نرم افزار و گاها کاربران شناخته شدهی محصول انجام میگیرد. این تست به منظور بررسی و ارزیابی عملکرد نرم افزار ، پایداری ، سازگاری ، میزان اطمینان به نرم افزار صورت میگیرد. تست بتا این ارزش را برای نرم افزار میآورد تا توسط کاربران اصلی و در محیطهای واقعی به طور وسیعتری مورد بررسی قرار گیرد تا بتواند چرخه تست نرم افزار را با موفقیت به اتمام برساند. همچین به توسعه دهنده کمک میکند تا حجم ورودیهای عظیمی را جمع آوری تا در آینده برای نسخهها و پشتیبانیهای آتی استفاده کند.
تصویر زیر جایگاه تست بتا را در روند تست نشان میدهد:
عوامل زیر در موفقیت هر چه بیشتر تست بتا وابسته هستند:
هزینه تست
تعداد شرکت کنندگان در این تست
نحوه ارسال به کاربر ( که امروزه بیشتر از طریق اینترنت صورت میگیرد)
مدت زمان تست
از نکات مهم در این تست میتوان گفت که طول دوره تست آلفا، بیشتر از تست بتاست که به طور متوسط 3 تا 5 برابر تست بتا طول میکشد و خود تست بتا، عموما در حد چند هفته و گاها تا چند ماه میباشد.
در صورتیکه تست آلفا با موفقیت بیرون داده شود، وارد نسخه بتا میشود و بعد از اتمام تست بتا وارد ریلیز نهایی میشود. تست آلفا با توجه COTS گفته شده میتواند کاربران خاص و محیط خاص خود را داشته باشد.