تعريف اختبارات التحميل استنادا إلى تدفقات المستخدم الرئيسية

مكتمل

يعد اختبار التحميل جزءا مهما من التحقق المستمر. للبدء، تحتاج إلى تحديد تدفقات التطبيقات. في هذه الوحدة، ستتعرف على تدفقات المستخدم والنظام، وسبب أهميتها، ومعايير تصميم الاختبارات.

ما هي تدفقات التطبيقات؟

يتكون التدفق من تفاعلات التطبيق المطلوبة لإكمال مهمة.

  • تدفق المستخدم

    تشير هذه التدفقات إلى كيفية تفاعل المستخدمين مع التطبيق الخاص بك. في سيناريو Contoso Shoes، تعد عملية السداد مع الخروج لشراء العناصر مثالا على تدفق المستخدم. يحتوي على هذه المكونات التي تشارك في إدارة المخزون:

    • تطبيق الويب الأمامي
    • منطق السداد مع الخروج في Azure Functions
    • قاعدة بيانات الواجهة الخلفية في Azure Cosmos DB

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

  • تدفق النظام

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

إشعار

تحتوي معظم التطبيقات على تدفقات متعددة. يمكن لكل تدفق لمس مكونات مختلفة من البنية. أيضا، يمكن أن يظهر مكون في أكثر من تدفق واحد. من المهم فهم التدفقات التي تتأثر عند فشل أحد المكونات.

تعريف اختبار التحميل وقيم العتبة الخاصة به

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

يمكن أن يساعد اختبار التحميل في تحديد الأداء وحدود الأداء واستخدام الموارد وسلوك التحجيم الأمثل لمكونات تدفق المستخدم. يجب أن تعكس اختبارات التحميل الخاصة بك كل تدفق مستخدم ذي صلة وتدفق النظام. يتطلب التصميم الجيد معرفة التطبيق. ابدأ بطرح أسئلة، مثل:

  • ما هي استدعاءات واجهة برمجة التطبيقات التي يجب إجراؤها؟
  • ما هو تسلسل استدعاءات واجهة برمجة التطبيقات؟
  • ما هي بيانات الاختبار التي يجب استخدامها مع استدعاءات واجهة برمجة التطبيقات؟

استنادا إلى الإجابات:

  1. تحديد السيناريوهات الرئيسية والتبعيات والاستخدام المتوقع والتوافر والأداء وأهداف قابلية التوسع.

  2. حدد مجموعة من قيم العتبة القابلة للقياس لتحديد الأداء المتوقع للسيناريوهات الرئيسية. على سبيل المثال، بالنسبة لمكون تطبيق، قد تفكر في قيم الحد للعدد المتوقع من عمليات تسجيل دخول المستخدم والطلبات في الثانية من واجهة برمجة التطبيقات والعمليات في الثانية من عملية الخلفية.

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

    في مثال تدفق عملية السداد مع الخروج، يمكنك تعيين حد متوسط مدة تحميل الصفحة لكل خطوة لتكون أقل من 500 مللي ثانية ودعم ما يصل إلى 100 مستخدم متزامن.

مع تحديد جميع قيم العتبة، أنت الآن جاهز لتنفيذ اختبار التحميل. تستخدم هذه الوحدة اختبار تحميل Azure.

على الرغم من أنه يمكنك تكوين Azure Load Testing ونشره من خلال مدخل Microsoft Azure، يوصى بشدة باتباع نهج برمجي. استخدم واجهات برمجة التطبيقات لنشر الاختبارات وتكوينها وتشغيلها بطريقة تلقائية. ويناقش هذا النهج في الوحدة التالية.

‏التحقق من المعرفة

1.

هل جميع تدفقات المستخدمين والنظام بنفس القدر من الأهمية؟

2.

هل يؤدي انقطاع المكون دائما إلى تدهور الخدمة؟

3.

هل يمكن أن يساعدك اختبار التحميل في تقييم الأداء المتوقع لتدفق المستخدم؟