الوقت ضيّق… ماذا تختبر أولًا؟ دليل Risk-Based Testing
تعلّم ترتيب الاختبارات حسب احتمال الفشل وأثره، وتوزيع وقتك على المخاطر الأهم، مع مثال عملي لتحديد الأولويات قبل الإصدار.

أمامك ساعتان وعشرات الاختبارات… من أين تبدأ؟
وصلت نسخة جديدة قبل موعد الإطلاق، والوقت لا يكفي لتنفيذ كل Test Cases. هل تبدأ بأول حالة في القائمة؟ أم تختار الحالات السريعة حتى تنجز عددًا أكبر؟
السؤال الأهم هو: أي مشكلة قد تسبب أكبر ضرر إذا وصلت إلى المستخدم؟
هنا يساعدك الاختبار المبني على المخاطر (Risk-Based Testing) على تحديد ما تختبره أولًا، وأين تحتاج إلى تغطية أعمق.
ما هو Risk-Based Testing؟
هو أسلوب يوجّه جهد الاختبار بناءً على مخاطر المنتج. نقيّم ما قد يفشل، واحتمال حدوثه، والأثر الناتج عنه، ثم نستخدم هذا التقييم لتحديد أولويات الاختبار وعمقه.
ولا يقتصر استخدامه على ضغط الوقت؛ الأفضل أن يبدأ خلال التخطيط، ويتحدّث مع تغيّر المنتج وظهور نتائج جديدة.
انتبه إلى الفرق: ضيق الوقت خطر على المشروع، أما خصم مبلغ خاطئ من المستخدم فهو خطر في المنتج. نستخدم تقييم مخاطر المنتج لاختيار الاختبارات الأهم ضمن الوقت المتاح.
1. اكتب الخطر كسيناريو واضح
عبارة «الدفع مهم» لا تحدّد ما الذي يجب اختباره.
اكتب بدلًا منها:
- قد يتكرر الخصم عند إعادة محاولة الدفع.
- قد يتمكن مستخدم من مشاهدة بيانات حساب آخر.
- قد يضيع الحجز عند انقطاع الاتصال بعد الدفع.
- قد تمنع مشكلة في تسجيل الدخول المستخدمين من الوصول للخدمة.
كل سيناريو يربط فشلًا محتملًا بضرر واضح، ويساعدك على اختيار اختبار مناسب.
2. قيّم الاحتمال والأثر
احتمال الحدوث — Likelihood: ما مدى احتمال ظهور هذا الفشل؟ استعن بحجم التغيير، وتعقيد الميزة، والتكاملات، وتاريخ الأخطاء، ومدى وضوح المتطلبات.
الأثر — Impact: ماذا يحدث إذا وقع الفشل؟ هل يسبب خسارة مالية، أو كشف بيانات، أو تعطيل مهمة أساسية، أم مشكلة شكلية محدودة؟
يمكن استخدام مقياس مبسّط من 1 إلى 3 لكل عامل:
درجة ترتيب تقريبية = الاحتمال × الأثر.
هذه أداة للنقاش، وليست قياسًا علميًا دقيقًا. ولا تسمح للدرجة وحدها بتأجيل خطر شديد، مثل كشف بيانات حساسة، لمجرد تقدير احتماله بأنه منخفض.
3. مثال عملي لترتيب الاختبارات
لنفترض إصدارًا لمتجر إلكتروني يتضمن تعديلًا على الدفع وكوبونات الخصم. هذا تقييم افتراضي خاص بالمثال:
| الخطر المحتمل | الاحتمال | الأثر | أولوية الاختبار |
|---|---|---|---|
| تكرار الخصم عند إعادة المحاولة | مرتفع | مرتفع | أولًا |
| احتساب الخصم بقيمة خاطئة | مرتفع | مرتفع | أولًا |
| تعذّر إكمال الشراء للزائر | متوسط | مرتفع | مبكرًا |
| عدم وصول رسالة تأكيد مع ظهور الطلب صحيحًا داخل التطبيق | متوسط | متوسط | بعد المسارات الأعلى خطرًا |
| اختلاف بسيط في محاذاة صورة | متوسط | منخفض | لاحقًا |
الأولوية تعتمد على السياق. إذا كانت رسالة التأكيد تحتوي تذكرة الدخول الوحيدة، مثلًا، يصبح عدم وصولها أكثر خطورة.
4. حوّل المخاطر إلى اختبارات محدّدة
لتقييم خطر تكرار الخصم، لا يكفي اختبار عملية شراء ناجحة واحدة. جرّب في بيئة اختبار:
- الضغط المتكرر على زر الدفع.
- تأخر الاستجابة ثم إعادة المحاولة.
- انقطاع الاتصال بعد إرسال الطلب.
- التحقق من عدد الطلبات وسجلات الدفع بعد التعافي.
ولخطر الخصم الخاطئ، اختبر حدود صلاحية الكوبون، وشروط الحد الأدنى، والأصناف المستثناة وفق المتطلبات.
التغطية الجيدة تعني أن الاختبارات تعالج الخطر المقصود، لا أنها تمرّ على الشاشة فقط.
5. كيف توزّع ساعتين متاحتين؟
يمكن أن تبدأ بخطة عملية مثل:
- 15 دقيقة: مراجعة التغييرات وتحديد المخاطر مع المطوّر وصاحب المنتج.
- 15 دقيقة: فحص Smoke للتأكد من قابلية النسخة للاختبار.
- 60 دقيقة: اختبار المخاطر الأعلى والمسارات المتأثرة.
- 20 دقيقة: Regression موجّه واستكشاف الحالات المجاورة.
- 10 دقائق: تلخيص النتائج والمخاطر المتبقية.
هذا توزيع توضيحي قابل للتعديل. إذا ظهر عطل يمنع الدخول من البداية، أبلغ الفريق وعدّل الخطة بدل متابعة جدول لم يعد مناسبًا.
وشغّل الاختبارات الآلية الموثوقة بالتوازي إن توفرت، مع مراجعة نتائجها.
6. حدّث الأولويات أثناء الاختبار
قد تكتشف أن المشكلة أوسع من المتوقع، أو أن تغييرًا يؤثر في خدمة مشتركة تستخدمها عدة شاشات. عندها أعد ترتيب الاختبارات.
ولا تحصر التغطية في الميزات المعدّلة فقط؛ فقد تؤثر تغييرات الصلاحيات أو المكتبات المشتركة في مسارات قديمة.
عند تقارب المخاطر، راعِ الاعتماد بين الاختبارات ووقت تجهيزها. لكن لا تجعل سهولة التنفيذ سببًا دائمًا لتأجيل الحالات المهمة.
ماذا تقول عند انتهاء الوقت؟
بدلًا من «اختبرت أهم الأشياء»، قدّم ملخصًا محددًا:
تم اختباره: إكمال الشراء، وحساب الخصم، ومنع تكرار الدفع.
النتائج: المسارات الأساسية نجحت، مع مشكلة مفتوحة في رسالة التأكيد.
لم يُختبر: بعض تركيبات الأجهزة والحالات الأقل أولوية.
المخاطر المتبقية: موضّحة بأثرها، وتحتاج إلى قبول أصحاب الصلاحية أو وقت إضافي للاختبار.
انتهاء الوقت لا يحوّل ما لم يُختبر إلى شيء آمن. قيمة Risk-Based Testing هي أن تجعل اختيارك واضحًا، وتوجّه الجهد نحو الضرر الأهم، وتُظهر ما بقي من عدم يقين.



النقاش 🔻