محتويات الدورة

هندسة موثوقية المواقع / المتقدم: الفشل المضبوط وجاهزية الخدمة / الدرس 16

اختبارات الاعتمادية وتصميم التجارب المحدودة

اختر اختبارات لآليات فشل واضحة وصمم تجارب بتفويض واحتواء وشروط إيقاف وحدود دليل صادقة.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • ربط الاختبارات بالمخاطر.
  • فصل النماذج المحلية عن دليل البيئة.
  • تعريف تجربة محتواة ومعايير قبول.

ابدأ بادعاء فشل محدد

يعالج اختبار الاعتمادية خطراً ملموساً: تنفيذ منتهي المهلة أو حجز مكرر برسالة أو حجب العمال باعتمادية أو استعادة ناقصة. تحتاج المخاطر حدوداً مختلفة. يفحص اختبار الوحدة مقارنة المهلة وقد يلزم تكامل لإثبات مرور الإلغاء إلى مكتبة محددة. يختبر الشامل رحلة ولا يستكشف كل انتقال. اكتب الآلية والدفاع المتوقع قبل اختيار الأداة كي يكون للنجاح معنى واضح.

استخدم نموذجاً أدنى لفحص ثابت

يقبل المثال عملاً افتراضياً فقط إذا كانت مهلته في المستقبل تماماً. يفحص مساواة الزمن للمهلة ويؤكد رفض المنتهي. هذا دليل لقاعدة خالصة لا إثبات لتمرير الزمن أو الإلغاء في طابور حقيقي. تكشف النماذج افتراضاتها وتنفذ بلا خدمات خارجية. اجعلها صغيرة قابلة للفحص وصرح بإغفال التزامن أو الشبكة أو الحفظ بدلاً من ادعاء اختبار النظام بها.

python اختبار محلي لثابت المهلة
def may_start(now, deadline):
    return now < deadline
assert may_start(9, 10) is True
assert may_start(10, 10) is False
assert may_start(11, 10) is False
print("deadline-boundary-checks-passed")
الناتج المتوقع
deadline-boundary-checks-passed

يختبر النص مقارنة خالصة فقط، دون ساعة أو طابور أو شبكة أو خدمة أو حقن أعطال.

اختر أصغر حد يجيب السؤال

استخدم عينات حتمية للوحدات والعقود للتصنيف والانتقالات والمدخلات. استخدم تكاملاً معزولاً معتمداً لسلوك البروتوكول والحفظ الذي يغفله النموذج. احجز التجارب الواسعة لما يحتاج تفاعل النظام ولا تفترض أن الواقعية الأكبر أكثر إفادة. قد تفشل تجربة معقدة لأسباب بيئية تحجب الآلية. سجّل النسخ وشكل الحمل والبذور المناسبة وجمع الدليل. اختبر المكرر والمتأخر والمفقود والجزئي إلى جانب النجاح لكشف الافتراضات.

صمم الاحتواء قبل أي عطل

تحتاج تجربة العطل تفويضاً صريحاً للبيئة والفعل. حدد الفرضية والأساس وأقصى نطاق ومدة ورصد وإيقاف وتعافياً ومشغلاً مسؤولاً. تبقى الخطة تحريرية غير تنفيذية لنموذج افتراضي معزول. لا تستنتج إذن تعطيل خدمة من إذن قراءة تعليم. يجب أن يعمل الإيقاف إذا فشل رصد التجربة أو اعتماديتها. افحص أولاً إمكان التعلم بعينة محلية أكثر أماناً. التجربة المضبوطة عمل هندسي لا استعراض استعداد للكسر.

yaml خطة تجربة غير تنفيذية
experiment_design: synthetic-dependency-unavailable
environment: isolated-offline-model-only
hypothesis: bounded-failure-does-not-admit-expired-work
maximum_scope: fixed-synthetic-event-list
abort_on: any-unexpected-external-access
recovery: discard-model-state
acceptance: invariant-and-expected-outcome-reviewed

توثق الخطة الاحتواء والقبول ولا تحقن عطلاً أو تصل لعنقود أو تولد حملاً أو تغير إعداداً.

أبلغ ما يدعمه الدليل تحديداً

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

الأخطاء الشائعة وإصلاحها

يُعلن النموذج إثباتاً للإنتاج

لماذا يحدث؟
غاب حد الدليل.
كيف تصلحه؟
اذكر المدخلات والافتراضات والسلوك الغائب.
كيف تتجنب تكراره؟
افصل ادعاءات النموذج والتكامل والتشغيل.

تجربة بلا إيقاف

لماذا يحدث؟
تأخر التفكير في الاحتواء.
كيف تصلحه؟
لا تنفذ قبل مراجعة الإيقاف والتعافي.
كيف تتجنب تكراره؟
اشترط التفويض والنطاق.

تنجح الاختبارات وتبقى الكتابة المكررة

لماذا يحدث؟
غُطي النجاح فقط.
كيف تصلحه؟
أضف التكرار والاكتمال الجزئي.
كيف تتجنب تكراره؟
اربط الانحدار بثوابت المستخدم والبيانات.

اختبر فهمك

1. ماذا يثبت نجاح عينة المهلة؟

اعرض الحل المشروح

يثبت المقارنة الصارمة للدالة المعروضة في الحالات الثلاث بالتنفيذ المحلي لبايثون. لا يثبت تمرير المهلة أو اتفاق الساعات أو دمج الطابور أو الإلغاء؛ وتحتاج تلك دليلاً عند حد التنفيذ المناسب.

2. يقترح الفريق قطع اعتمادية حية لاختبار الإعادة. ماذا تراجع أولاً؟

اعرض الحل المشروح

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

أهم ما تعلمته

  • اختر الاختبارات للآليات والثوابت.
  • يسبق الاحتواء والتفويض تجارب الأعطال.
  • أبلغ السلوك المختبر والمغفل بدقة.

المراجع الرسمية