چکیده
بسیاری از هزینههای توسعه نرمافزار، مربوط به آزمونهای مکرر، در
مرحله نگهداری نرمافزار در حال تکامل و اصلاح است؛ زیرا ایجاد هر تغییر در
کد نرمافزار، نسخهی جدیدی به دست میدهد که درستی یابی آن، نیازمند
طراحی آزمونهای جدید و نیز انجام مجدد تمام آزمونهای قبلی، برای اطمینان
از عدم تأثیرپذیری نامطلوب عملکرد جاری نرمافزار از تغییرات صورت گرفته
است. این فرایند آزمون رگرسیون نرمافزار نامیده میشود. به دلیل محدودیت
منابع و زمان آزمون، نمیتوان کل این حجم زیاد و رو به توسعه آزمونها را
در هر دور تکرار آزمون، مجددا اجرا کرد. یکی از مهمترین فنون ارائهشده
برای غلبه بر مشکل هزینهی زیاد آزمون رگرسیون نرمافزار، انتخاب و
اولویتدهی موارد آزمون است که منظور از آن، انتخاب و اجرای مهمترین موارد
آزمون، برحسب معیار شایستگی برای دستابی سریعتر به هدف آزمون است. مشکل
اغلب فنون انتخاب و اولویتدهی ارائهشده، نادیده گرفتن پیاپی بودن اجرای
آزمون رگرسیون، تأثیرگذاری کارایی آزمونها در هر تکرار آزمون رگرسیون بر
کارایی مراحل بعدی، تفاوت بین هزینه آزمون و دشواری خطا و نیز محدودیت زمان
و منابع در محیط واقعی اجرای آزمون است. در این پایاننامه، روشی برای
انتخاب و اولویتدهی موارد آزمون مبتنی بر پیشینه و آگاه از هزینه با
استفاده از الگوریتم ژنتیک بر پایهی پنج معیار سابقهی کارایی کشف خطای
موارد آزمون، احتمال انتخاب پیشین، پیشینهی اجرای آنها در جریان اجراهای
متعدد آزمون رگرسیون، هزینه آزمون و دشواری خطا ارائهشده است که اثر
محدودیت منابع بر اجرای آزمونها نیز اعمالشده است.
برای ارزیابی کمی سرعت آشکارسازی خطا برای روش پیشنهادی، پیادهسازی
انجام شد که ارزیابی با استفاده از متریک APFDcانجامشده است. مقایسه
عملکرد روش پیشنهادی با روش مبتنی بر پیشینه و روش تصادفی، انجامگرفته
است. نتایج ارائهشده در پایاننامه، حاکی از بهبود حدود 30 % در سرعت و
آشکارسازی خطای زودتر روش پیشنهادی نسبت به روشهای مورد مقایسه است.
واژههای کلیدی: آزمون رگرسیون نرمافزار، انتخاب موارد آزمون، اولویتدهی موارد آزمون، اولویتدهی مبتنی بر پیشینه، آگاه از هزینه
فهرست مطالب
عنوان صفحه
فصل 1: مقدمه1
1-1- هدف2
1-2- انگیزه3
1-3- مروری بر روشهای ارائهشده4
1-4- نوآوری بر روشهای ارائهشده5
1-5- رئوس مطالب سایر فصلها6
فصل 2: اصول و مبانی نظری و پیشینه تحقیق7
2-1- مقدمه