نام پژوهشگر: آرمان ابراهیم پور
آرمان ابراهیم پور اشکان سامی
پس از ایجاد هر تغییر در کد نرم افزار، آزمون رگرسیون برروی نرم افزار تغییر یافته اجرا می شود تا بخش های دیگر کد که تحت تاثیر اثرات جانبی این تغییرات قرار گرفته اند شناسایی گردند. به دلیل محدودیت در زمان و منابع، از تکنیک های اولویت بندی موارد آزمون استفاده می شود تا موارد آزمون بر حسب تواناییشان در شناسایی خطاها رتبه بندی شوند. به طور کلی، تکنیک های اولویت بندی موارد آزمون به دو دسته تکنیک های مبتنی بر شباهت و تکنیک های مبتنی بر پوشش تقسیم می شوند. تکنیک های اولویت بندی پویای مبتنی بر شباهت تلاش می کنند تا به موارد آزمون با عملکرد متفاوت تر، اولویت بالاتری داده شود و برای این منظور از معیارهای فاصله، برای محاسبه فاصله میان اطلاعات پوششی موارد آزمون استفاده می کنند. با وجود اهمیت بسیار زیاد نحوه محاسبه اختلاف میان موارد آزمون در این دسته از تکنیک ها، تاکنون تنها به استفاده از معیار دودویی جاکارد بسنده شده است. از سوی دیگر، تکنیک های اولویت بندی مبتنی بر پوشش، از اطلاعات پوشش موارد آزمون بر روی کد، به صورت دودویی استفاده می کنند. این در حالی است که به نظر می رسد استفاده از اطلاعات فراوانی پوشش می تواند برای اولویت بندی کارامدتر موارد آزمون، بسیار سودمند باشد. در این پژوهش برای اولین بار، اطلاعات پوششی به شکل فراوانی استخراج شده است. این تحقیق، در دسته تکنیک های مبتنی بر شباهت، علاوه بر پیشنهاد یک معیار فاصله جدید، برای اولین بار کارایی 19 معیار فاصله مختلف در تکنیک های اولویت بندی مبتنی بر شباهت را مورد ارزیابی قرار داده است. نتایج آزمایش ها بر روی 12 برنامه استاندارد نشان می دهند که برخلاف باور قبلی، معیار جاکارد کارایی بسیار پایین تری نسبت به سایر معیارهای فاصله مورد بررسی دارد. همچنین استخراج اطلاعات فراوانی پوشش و استفاده از آن ها در معیارهای فاصله عددی برای محاسبه فاصله میان موارد آزمون، کارایی تکنیک های اولویت بندی مبتنی بر شباهت را به طور قابل توجهی بهبود می بخشند. از سوی دیگر، برای اثبات اثربخشی اطلاعات فراوانی پوشش بر قابلیت کشف خطای تکنیک های اولویت بندی مبتنی بر پوشش، تکنیک مطرح افزایشی به عنوان نماینده این دسته از تکنیک ها برگزیده شده و چندین نسخه تعمیم یافته جدید برای این تکنیک پیشنهاد داده شده است. روش های ارائه شده بر روی 12 برنامه استاندارد اجرا شده اند. نتایج حاصل بر روی برنامه های با سایز کوچک، بیانگر برتری آماری معنادار روش های ارائه شده نسبت به نسخه سنتی تکنیک افزایشی می باشند. هرچند نتایج حاصل بر روی برنامه های بزرگ، تفاوت آماری معناداری را میان نتایج روش های جدید و روش سنتی نشان نمی دهند.