Key points are not available for this paper at this time.
الاختبار التراجعي هو عملية صيانة مكلفة وتمر على فترات متكررة، وتستخدم لإعادة التحقق من البرمجيات المعدلة. لتحسينه، تسعى تقنيات اختيار الاختبارات التراجعية (RTS) إلى تقليل التكاليف دون تقليل الفعالية بشكل مفرط من خلال اختيار مجموعة فرعية بعناية من مجموعة الاختبارات. تحت ظروف معينة، يمكن لبعضها حتى ضمان أن حالات الاختبار المختارة لا تؤدي أسوأ من مجموعة الاختبارات الأصلية. هذا يتجاهل بعض الحقائق المتعلقة بتطوير البرمجيات مثل قيود الموارد والوقت التي قد تمنع استخدام تقنيات RTS كما هو مقصود (على سبيل المثال، يجب إجراء الاختبار التراجعي خلال الليل، لكن اختيار RTS يرجع مجموعتين من الاختبارات). في الممارسة العملية، يعمل المختبرون على تجاوز ذلك من خلال تحديد أولويات حالات الاختبار وتشغيل فقط تلك التي تتناسب مع القيود الحالية. للأسف، عمومًا ينتهك هذا الافتراضات الأساسية لتقنيات RTS، مما يلغي ضمانات تقنيات RTS ويجعل أداء الاختبار التراجعي غير متوقع. على الرغم من ذلك، فإن تقنيات تحديد الأولويات الحالية لا تحتفظ بالذاكرة، مما يفترض ضمنيًا أن الخيارات المحلية يمكن أن تضمن أداءً كافيًا على المدى الطويل. بدلاً من ذلك، نقترح تقنية جديدة تعتمد تحديد الأولويات على بيانات التنفيذ التاريخية. أجرينا تجربة لتقييم تأثيراتها على الأداء الطويل الأمد للاختبار التراجعي في ظروف محدودة الموارد. تكشف نتائجنا عن تنازلات أساسية يجب أخذها بعين الاعتبار عند استخدام هذه التقنيات على مدى سلسلة من إصدارات البرمجيات.
قام كيم وزملاؤه (الأربعاء) بدراسة هذا السؤال.