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

Grafana / المتقدم: الوصول والاعتماديات والأدلة / الدرس 18

اختبارات المعنى ومراجعة تغييرات اللوحات

احم عقود القياس والوصول للوحة بعينات قيم معلومة وجرد اعتماديات صريح ومراجعة محددة وادعاءات تحقق صادقة.

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

أهداف الدرس

  • افصل تحليل JSON من اختبارات المعنى والتنفيذ.
  • راجع تغير المصدر والإطار والتحويل والعرض والوصول معاً.
  • حدد الأدوات المختبرة وحدود التكامل غير المنفذة بدقة.

اختبر القرار الذي تدعمه اللوحة

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

اجعل النتيجة المقصودة مفهومة مستقلة

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

json عقد تحريري لمعنى لوحة
{"view":"transit-lab-mean-delay","source_uid":"transit-lab-prom","route":"r1","unit":"seconds","reducer":"observed-mean","expected_fixture_value":6.0}

تعرف الحقول حالة مراجعة افتراضية لا حقول API أو لوحة Grafana. لا ينشأ مورد أو تُدعى استجابة مصدر فعلية.

نفذ الادعاء المحلي القابل للفحص فقط

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

python تحقق محلي من عينة معنى
import json
fixture = json.loads('{"unit":"seconds","rows":[{"route":"r1","delay":4},{"route":"r1","delay":8}]}')
assert fixture["unit"] == "seconds"
assert all(row["route"] == "r1" for row in fixture["rows"])
mean = sum(row["delay"] for row in fixture["rows"]) / len(fixture["rows"])
assert mean == 6.0
print("fixture_mean_seconds", mean)
الناتج المتوقع
fixture_mean_seconds 6.0

JSON الثابت هو النظام المختبر كله. لا يُختبر مخطط Grafana أو إضافة أو مصدر أو استعلام أو تحويل أو عارض أو حساب.

راجع التغيير كاملاً عبر الاعتماديات

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

يشمل التسليم الصادق الحدود والملكية

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

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

تسمى صورة تحققاً من البداية للنهاية.

لماذا يحدث؟
حل المظهر محل دليل الاستعلام والوصول.
كيف تصلحه؟
حدد ما تثبته الصورة وكل عينة.
كيف تتجنب تكراره؟
افصل التخطيط والمعنى والتكامل والتشغيل.

ينجح الاختبار بتغيير المتوقع لعيب قائم.

لماذا يحدث؟
استُبدل العقد بالسلوك الحالي.
كيف تصلحه؟
أعد توقعاً مبرراً مستقلاً.
كيف تتجنب تكراره؟
راجع الآلية التي تحميها العينة.

تسمى إعادة JSON رجوعاً كاملاً.

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

اختبر فهمك

1. أي حالات تحمي stat لمتوسط تأخر النقل من تغييرات مضللة؟

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

أدرج مشاهدات مسار معلومة ومجموعات متفاوتة ووحدات خاطئة وقيماً مفقودة وقديمة وأسماء حقول متغيرة ومفاتيح ربط مكررة ونطاق وقت مختلفاً. أكد المجموعة والاختزال مع الرقم. استخدم التكامل المخول لسلوك Grafana، وقيد ادعاء النموذج المحلي بما اختبره.

2. ماذا يجب أن يقول تقرير تحقق نهائي إذا لم تُنفذ إلا فحوص بايثون وJSON؟

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

سمِّ العينات المحلية والخرج الدقيق المفحوص. اذكر عدم تنفيذ Grafana والإضافات واستعلامات المصادر والتحويلات والعرض والحسابات والتنبيهات وتوصيل الإشعار والتهيئة. احفظ نسخة المرجع الثابتة وافتراضات الطبعة دون عرض التوثيق بوصفه نتائج تشغيل.

أهم ما تعلمته

  • تحمي الاختبارات العقود في طبقات صريحة.
  • تجعل النسخ والفرق الدلالي التغيير قابلاً للمراجعة.
  • لتطابق ادعاءات التحقق الأدوات والحدود المختبرة.

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