ضمان الجودة

استراتيجية أتمتة الاختبار: ماذا تُؤتمت وماذا تتجاوز

معظم مجموعات الاختبار لا تفشل بسبب قلّة التغطية، بل بسبب التغطية الخاطئة — وإليك كيف تُقرّر ما الذي يستحق الأتمتة فعلًا وما الذي تتجاوزه.

MA
محمود الحرازيناستشارات الأمن والذكاء الاصطناعي
Sep 2025· 4 دقيقة قراءة
شارك

استشرتُ العام الماضي فريقًا يملك 4000 اختبار آلي، وخطَّ إصدارٍ (pipeline) يستغرق 90 دقيقة قبل أن يتحوّل إلى الأحمر. كانت اختباراته خضراء طَوال الوقت تقريبًا — وهو ما يبدو إنجازًا، إلى أن تنتبه إلى أن التي تلتقط الأخطاء الحقيقية هي نفسها الـ200 التي كتبوها في الأشهر الستة الأولى. أما الـ3800 الباقية فكانت ضريبة صيانة: كل تعديلٍ بسيط في الواجهة يكسر مئةً منها، والمهندسون "يُصلحون" الأعطال بترخية الافتراضات (assertions)، والثقة في المجموعة تتآكل بهدوء حتى تبلغ الصفر.

هذا هو نمط الفشل الحقيقي في أتمتة الاختبارات. المشكلة ليست "قلّة التغطية" — بل التغطية الخاطئة، المؤتمتة في الطبقة الخاطئة، والمُدافَع عنها وكأن الكمّ هو الهدف.

ابدأ من كلفة الخطأ، لا من سهولة كتابة الاختبار

السؤال الأول الذي أطرحه ليس "هل يمكننا أتمتة هذا؟"، بل "ماذا يكلّفنا الأمر حين ينكسر هذا في الإنتاج، وكم مرّة يتغيّر المنطق الكامن خلفه؟". هذان المحوران يحسمان كلَّ شيء تقريبًا.

حسابُ مدفوعاتٍ يتغيّر مرّتين في السنة ويُكبّد خسائر صامتة عند الخطأ هو الهدف المثالي للأتمتة: أثرٌ واسع، ومنطقٌ مستقر. أما صفحةُ هبوطٍ تسويقية يعيد فريق النمو تشكيلها كل دورة تطوير (sprint) فهي على النقيض تقريبًا — كلفة فشلٍ منخفضة، وتغيُّرٌ دائم. أتمتة هذه الأخيرة تمنحك اختبارًا يفشل للسبب الصحيح ربما 5% من الوقت، ولأسبابٍ شكلية في بقيّته.

أتمِت ما يُكلّف الخطأ فيه كثيرًا ويُبطئ التحقق منه يدويًا. واترك ما يسهُل كسره ويسهُل التحقق منه بالعين المجردة.

ما الذي يستحق الأتمتة

  • المنطق الحرج للأعمال. التسعير، والضرائب، والصلاحيات، وحركة الأموال، وكلُّ ما تمسّ حدوده الامتثال أو السلامة. هذه تستحق تغطيةً كثيفة على مستوى الوحدة (unit) والتكامل (integration).
  • المسارات المعرّضة للانحدار (regression). العطل الذي تكرّر مرّتين بالفعل. اكتب الاختبار لحظة إصلاحه في المرة الثانية — فلديك الآن دليلٌ على هشاشته.
  • التحقق المُمِلّ المتكرر. عقود واجهات الـAPI، وتحويلات البيانات، وتباديل المدخلات التي لن يفحصها إنسانٌ بصبر. هنا تتفوّق الآلة فعلًا.
  • رحلات المستخدم الحرجة — حفنةٌ منها. التسجيل، وإتمام الشراء، وتسجيل الدخول، والمسار الوحيد الذي يُدِرّ الإيراد. من خمسة إلى عشرة اختبارات شاملة (end-to-end) تُشغّل المنتج فعلًا، لا خمسمئة.

ما الذي تتجاوزه، أو تتعامل معه بطريقة مختلفة

التجاوز قرارٌ استراتيجي، لا اعترافٌ بالكسل. بعض الأمور تُكلّف أتمتتها أكثر مما ستوفّره على الإطلاق.

  • دقة الواجهة والتخطيط على مستوى البكسل. يكشف الإنسان تخطيطًا مكسورًا في ثانيتين، بينما يَعُدّ اختبار اللقطة (snapshot) كلَّ إعادة تصميمٍ مشروعة فشلًا. استخدم أدوات المقارنة البصرية (visual-diff) بوعي، على بضع شاشات رئيسية — لا كردّ فعلٍ على كل مكوّن.
  • الميزات التجريبية أو المؤقتة. إن لم تكن واثقًا من بقاء الميزة حتى نهاية الربع، فالأتمتة الثقيلة رهانٌ على شيفرةٍ قد تحذفها. اختبر جوهرها الخطِر يدويًا، وأطلقها، ثم أتمِت ما يثبت بقاؤه.
  • المسارات الإدارية نادرة الاستخدام ومنخفضة المخاطر. الأداة الداخلية التي يستخدمها ثلاثة أشخاص مرّة في الشهر نادرًا ما تُبرّر مجموعة اختبارات شاملة. قائمة تحقّق يدوية قصيرة أصدقُ وأرخص.
  • اختبار كل شيء عبر الواجهة. أشيَع خطأ أراه: أن تدفع الفرق كلَّ اختباراتها إلى أبطأ الطبقات وأكثرها تقلّبًا. إن أمكن التحقق من المنطق باختبار API أو اختبار وحدة، فافعل. واحتفظ بالمتصفح لِما يتطلّب متصفحًا فعلًا.

الهرم لا يزال صامدًا — ومعظم انقلاباته ذاتية الصنع

لم يتغيّر الشكل: قاعدةٌ عريضة من اختبارات الوحدة السريعة، وشريطٌ أنحف من اختبارات التكامل، وقمّةٌ صغيرة من الاختبارات الشاملة. تقلب الفرق الهرم لأن اختبارات الواجهة تبدو وكأنها تُثبت أكثر، والحقيقة أنها تُثبت أقل، وأبطأ، وتنكسر أكثر. اختبار وحدةٍ يستغرق 30 ثانية ويفشل عند الدالة المكسورة بعينها خيرٌ من اختبار شامل يستغرق 6 دقائق ولا يخبرك سوى أن "إتمام الشراء تعيس".

الاختبارات المتقلبة أسوأ من غياب الاختبارات

اختبارٌ يفشل عشوائيًا مرّة كل 20 تشغيلًا سيفشل — عند اتساع النطاق — في موضعٍ ما من كل تشغيلٍ للخط تقريبًا. عندها يتعلّم فريقك الضغط على "إعادة المحاولة"، وحين تصير إعادة المحاولة ردّ فعلٍ تلقائيًا يُمحى معها فشلٌ حقيقي — فتغدو مجموعتك تُخفي الأخطاء بنشاط. اعزل الاختبارات المتقلبة سريعًا، وأصلِحها أو احذفها، وتعامل مع التقلّب بوصفه عطلًا من الدرجة الثانية (Sev-2) لا مجرّد إزعاج. مجموعةٌ صغيرة تثق بها خيرٌ من كبيرةٍ لا تثق بها.

من أين تبدأ يوم الاثنين

لا تُطلق "مبادرة أتمتة". افعل هذا بدلًا من ذلك: راجِع آخر 20 حادثة إنتاج واسأل أيًّا منها كان اختبارٌ زهيد الثمن ليلتقطه. تلك القائمة هي طابور أولوياتك الحقيقي — مبنيٌّ على ما آذاك فعلًا، لا على نِسب التغطية.

التغطية مجرّد رقم. الثقة هي الهدف — والعلاقة بينهما فضفاضة في أحسن الأحوال. ما الذي كنت ستحذفه من مجموعتك غدًا لو لم يَقِس أحدٌ التغطية؟

شارك
★ عن الكاتب
MA

محمود الحرازين — استشارات الأمن والذكاء الاصطناعي. يساعد المؤسسات والفرق التقنية على تحويل الأنظمة المعقّدة إلى بنية آمنة وموثوقة وقابلة للتوسّع — من الفكرة حتى التشغيل.

«يتحدّث إليك خبيرٌ مباشرةً. نطاقٌ وسعرٌ واضحان، وتنفيذٌ سريع.»
احجز استشارة

مكالمة 30 دقيقة · بدون التزام

ALHARAZIN

قيادة التحول الرقمي من خلال بروتوكولات الأمن السيبراني المتقدمة وابتكارات الذكاء الاصطناعي. جسر يربط بين التقنية المعقدة والإدارة الاستراتيجية للأعمال.

© 2026 محمود الحرازين. جميع الحقوق محفوظة.