اختبار حالات الاستخدام مع أمثلة

⚡ ملخص ذكي

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

  • 🎭 تفاعلات النموذج بوضوح: قم بتسمية كل تدفق بالجهة الفاعلة (A) والنظام (S) حتى يتمكن المختبرون من tracفي كل خطوة من خطوات المعاملة.
  • 🛤️ ابدأ بتغطية المسار السعيد أولاً: تحقق من صحة سيناريو النجاح الرئيسي، ثم أضف طبقات من الامتدادات ومسارات الاستثناء التي تحاكي أخطاء المستخدم الحقيقية.
  • 🧩 Anchor بشروط: قم بربط كل خطوة بشروط مسبقة وشروط لاحقة صريحة بحيث تكون نتيجة الاختبار غير ملتبسة.
  • 🔗 Tracهـ للقبول: قم بربط حالات الاستخدام بمعايير القبول حتى يتمكن أصحاب المصلحة في الأعمال من الموافقة على التغطية في وقت الإصدار.
  • 🤖 استخدم المساعدة بالذكاء الاصطناعي: تحويل قصص المستخدمين المكتوبة بلغة إنجليزية بسيطة إلى مسودات حالات استخدام، مما يسرع تصميم الاختبار ويقلل من حالات عدم الاستجابة.

استخدام اختبار الحالة: مثال

ما هو اختبار حالة الاستخدام؟

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

A حالة الاستخدام في مجال الاختبار، تُعرَّف حالات الاستخدام بأنها وصف موجز لاستخدام محدد للبرنامج من قِبل المستخدم. تُصاغ حالات الاستخدام بناءً على إجراءات المستخدم واستجابات التطبيق المقابلة، وتُستخدم على نطاق واسع لاستخلاص حالات تجريبية على مستوى النظام ومستوى القبول.

المكونات الرئيسية لحالة الاستخدام

تُبنى كل حالة استخدام من نفس مجموعة المكونات الأساسية. معرفة هذه المكونات مسبقًا يُسهّل تصميم تغطية تتوافق بسلاسة مع حالات الاختبار.

  • الممثل: المستخدم أو النظام الخارجي الذي يبدأ التفاعل. يُمثل بالحرف "A" في التدفقات النصية.
  • النظام: البرنامج قيد الاختبار الذي يستجيب للممثل. ويرمز له بالحرف "S".
  • الشروط المسبقة: الحالة التي يجب أن يكون عليها النظام قبل أن تبدأ حالة الاستخدام.
  • سيناريو النجاح الرئيسي: تسلسل المسار السعيد لخطوات الفاعل والنظام.
  • الإضافات / التدفقات البديلة: الفروع التي تتعامل مع الاستثناءات، أو حالات فشل التحقق، أو الخيارات البديلة.
  • الشروط اللاحقة: الحالة التي يبقى عليها النظام بعد انتهاء حالة الاستخدام.

كيفية إجراء اختبار حالة الاستخدام: مثال

في حالة الاستخدام، يُمثل الفاعل بالحرف "A" والنظام بالحرف "S". يصف المثال أدناه وظيفة تسجيل الدخول لتطبيق ويب.

استخدام اختبار الحالة: مثال

سيناريو النجاح الرئيسي خطوة الوصف
أ: الممثل س: النظام 1 A: أدخل اسم الوكيل وكلمة المرور
2 S: التحقق من كلمة المرور
3 S: السماح بالوصول إلى الحساب
ملحقات 2a كلمة المرور غير صالحة   S: عرض رسالة وطلب إعادة المحاولة (حتى 4 مرات)
2b كلمة المرور غير صالحة 4 مرات   S: إغلاق التطبيق

يصف المخطط أعلاه مسارًا واحدًا مثاليًا ومسارين فرعيين. اقرأه خطوة بخطوة:

  • يقوم المستخدم بإدخال البريد الإلكتروني وكلمة المرور كخطوة أولى في عملية تسجيل الدخول الكاملة.
  • يقوم النظام بالتحقق من صحة كلمة المرور.
  • إذا كانت كلمة المرور صحيحة، فسيتم منح الوصول.
  • إذا كانت كلمة المرور غير صالحة، يعرض النظام رسالة ويطلب منك ما يصل إلى أربع محاولات لإعادة المحاولة.
  • إذا ظلت كلمة المرور غير صالحة بعد أربع محاولات، فإن النظام يحظر المحاولات الأخرى (في هذا المثال، عن طريق حظر عنوان IP).

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

مزايا اختبار حالات الاستخدام

يُعد اختبار حالات الاستخدام مناسبًا تمامًا للتوفيق بين المتطلبات وحالات الاختبار. وتتمثل المزايا الرئيسية فيما يلي:

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

قيود اختبار حالات الاستخدام

هذه التقنية فعّالة ولكنها ليست شاملة. انتبه للقيود التالية:

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

الأسئلة الشائعة

تصف حالة الاستخدام كيفية تفاعل المستخدم مع النظام لتحقيق هدف معين. أما حالة الاختبار فتتحقق مما إذا كان النظام يتصرف فعلاً على هذا النحو. وعادةً ما تؤدي حالة استخدام واحدة إلى ظهور عدة حالات اختبار.

يُفضل تطبيق اختبار حالات الاستخدام على مستوى النظام ومستوى القبول، بعد اختبارات الوحدة والتكامل، عندما يكون الهدف هو التحقق من صحة سير عمل المستخدم بالكامل بدلاً من الوظائف الفردية.

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

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

كحد أدنى، تحتاج إلى حالة اختبار واحدة لسيناريو النجاح الرئيسي، بالإضافة إلى حالة اختبار لكل امتداد. وقد تتطلب حالات اختبار الحدود، والتكافؤ، والاختلافات السلبية، حالات إضافية، وذلك بحسب مستوى المخاطرة للتطبيق.

لا. يختبر اختبار حالات الاستخدام صحة سير العمل المعروف، بينما يكشف الاختبار الاستكشافي عن عيوب غير معروفة من خلال التفاعل غير المخطط له. تُكمل هاتان التقنيتان بعضهما البعض وتغطيان فئات مخاطر مختلفة.

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

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

تلخيص هذه التدوينة بـ: