ابدأ من هنا
الرئيسية›ISTQB CTFL V4›الفصل الرابع: تقنيات تصميم الاختبار — Test Analysis and Design

الفصل الرابع: تقنيات تصميم الاختبار — Test Analysis and Design

6 أيلول 2026·01:00:00·مبتدئأساسياتشرح

الفصل الرابع من منهج ISTQB CTFL V4 بالعربي: تقنيات الصندوق الأسود (تقسيم التكافؤ، القيم الحدّية، جداول القرار، انتقال الحالات)، تقنيات الصندوق الأبيض، التقنيات المبنيّة على الخبرة، والأساليب التعاونية مثل ATDD.

قبل ما تبدأ

  • خلّص الفصول الأول والثاني والثالث
  • ما بتحتاج تعرف تبرمج — تقنيات الصندوق الأبيض هون بتنشرح بالمفهوم مش بالكود

الخلاصة بنقاط

  • ثلاث عائلات تقنيات: صندوق أسود (من المواصفات)، صندوق أبيض (من البنية الداخلية)، ومبنيّة على الخبرة
  • تقسيم التكافؤ بيقلّل عدد الحالات، وتحليل القيم الحدّية بيمسك أكثر منطقة بتصير فيها الأخطاء
  • جدول القرار للقواعد المتشابكة، وانتقال الحالات للأنظمة اللي إلها حالات وأحداث
  • تغطية الجُمل أضعف من تغطية الفروع — 100% فروع بتضمن 100% جُمل والعكس مش صحيح
  • التقنيات المبنيّة على الخبرة (تخمين الأخطاء، الاستكشافي، القوائم) مكمّلة مش بديلة

هذا الدرس بيغطّي الفصل الرابع من منهج ISTQB CTFL نسخة 4.0 — Test Analysis and Design. الشرح التفصيلي بالفيديو، وهذا ملخّص مرجعي ترجعله قبل الامتحان.

1. نظرة عامة على تقنيات الاختبار

  • صندوق أسود (Black-box): بتصمّم الحالات من المواصفات والسلوك المتوقّع، بدون ما تشوف الكود.
  • صندوق أبيض (White-box): بتصمّم الحالات من البنية الداخلية للكود أو التدفّق.
  • مبنيّة على الخبرة (Experience-based): بتعتمد على معرفة المختبر وخبرته بالـ Bugs المتكرّرة.
  • الثلاثة مكمّلين لبعض — الاختيار بيعتمد على السياق والمخاطر ونوع النظام.

2. تقسيم التكافؤ — Equivalence Partitioning

  • بتقسّم مدخلات (أو مخرجات) لأقسام كل عناصرها متوقّع تتعامل بنفس الطريقة.
  • بتختبر قيمة وحدة تمثيلية من كل قسم بدل ما تجرّب كل القيم — هيك بتقلّل الحالات بدون ما تفقد التغطية.
  • لازم تغطّي الأقسام الصالحة وغير الصالحة، وكل قسم غير صالح لحاله (عشان ما يخفي واحد التاني).
  • التغطية = عدد الأقسام المختبَرة ÷ إجمالي الأقسام.

3. تحليل القيم الحدّية — Boundary Value Analysis

  • الـ Bugs بتتجمّع عند الحدود، فبنركّز عليها: امتداد طبيعي لتقسيم التكافؤ.
  • طريقة القيمتين: القيمة الحدّية والقيمة اللي بعدها مباشرة على كل حد.
  • طريقة الثلاث قيم: الحد، وقبله بواحد، وبعده بواحد.
  • بتنطبق بس على الأقسام المرتّبة (أرقام، تواريخ) — مش على قائمة خيارات غير مرتّبة.

4. جداول القرار — Decision Table Testing

  • مناسبة لما يكون في شروط متشابكة بتعطي نتائج مختلفة (قواعد عمل، خصومات، صلاحيات).
  • بتكتب الشروط وكل تركيباتها والنتيجة المتوقّعة لكل تركيبة، وكل عمود بيصير حالة اختبار.
  • فايدتها الكبيرة: بتكشف تركيبات ناسيها المواصفات — يعني بتلاقي Bugs بالمتطلبات مش بس بالكود.
  • التغطية = عدد القواعد المختبَرة ÷ إجمالي القواعد.

5. اختبار انتقال الحالات — State Transition Testing

  • مناسب للأنظمة اللي إلها حالات وأحداث: طلب، حجز، جلسة تسجيل دخول، اشتراك.
  • بترسم الحالات، الأحداث، الانتقالات، والأفعال الناتجة — بمخطّط أو بجدول.
  • بتختبر الانتقالات الصحيحة، والأهم: الانتقالات غير المسموحة (مثل إلغاء طلب منفّذ).
  • التغطية ممكن تكون كل الحالات، أو كل الانتقالات الصالحة، أو كل الانتقالات بما فيها غير الصالحة.

6. تقنيات الصندوق الأبيض

  • تغطية الجُمل (Statement coverage): نسبة الأسطر التنفيذية اللي اشتغلت.
  • تغطية الفروع (Branch coverage): نسبة نتائج القرارات (true/false) اللي انفّذت.
  • 100% تغطية فروع بتضمن 100% تغطية جُمل، والعكس مش صحيح — والاثنين ما بيضمنوا إنّ المنطق صح.
  • قيمتها: بتقيس التغطية على كامل الكود وبتكشف أجزاء ما انختبرت أبداً — شي ما بتشوفه من المواصفات.

7. التقنيات المبنيّة على الخبرة

  • تخمين الأخطاء (Error guessing): تتوقّع أين ممكن يغلط المطوّر بناءً على خبرتك وتاريخ الـ Bugs.
  • الاختبار الاستكشافي (Exploratory): تصميم وتنفيذ وتعلّم بنفس الوقت، عادة ضمن test charter وجلسة محدّدة بوقت.
  • الاختبار المبني على قائمة (Checklist-based): قائمة بنود مشتقّة من الخبرة أو المعايير — مرنة بس بتحتاج تحديث مستمر.
  • نقطة مهمّة للامتحان: هي تقنيات مكمّلة، وتغطيتها صعب تُقاس بدقّة.

8. الأساليب التعاونية و ATDD

  • الـ 3 C’s لكتابة user story: Card (البطاقة)، Conversation (النقاش)، Confirmation (معايير القبول).
  • INVEST: مستقلة، قابلة للتفاوض، ذات قيمة، قابلة للتقدير، صغيرة، وقابلة للاختبار.
  • معايير القبول: بتحدّد إمتى الـ story خلصت — بصيغة سيناريوهات (Given/When/Then) أو قائمة موجّهة.
  • ATDD: الفريق بيكتب اختبارات القبول من معايير القبول قبل التطوير، فبتنكشف الغموضات بدري وبيصير عند الجميع نفس الفهم.

بالدرس الجاي: الفصل الخامس — إدارة نشاطات الاختبار (Managing the Test Activities).

تمرين

صمّم حالات اختبار لشاشة تحويل مالي بأربع تقنيات

  1. الميزة: تحويل مبلغ بين حسابين — المبلغ من 1 إلى 5000 دينار، والتحويل مرفوض إذا الرصيد ما بيكفي
  2. طبّق تقسيم التكافؤ على حقل المبلغ وحدّد الأقسام الصالحة وغير الصالحة، واكتب حالة لكل قسم
  3. طبّق تحليل القيم الحدّية بطريقة الثلاث قيم على نفس الحقل واكتب القيم اللي رح تختبرها
  4. اعمل جدول قرار لشرطين: الرصيد كافي أو لأ، والحساب المستفيد مفعّل أو لأ — وحدّد النتيجة لكل تركيبة
  5. ارسم انتقال الحالات لطلب التحويل: مُنشأ ← بانتظار التأكيد ← منفّذ / مرفوض / ملغى، وحدّد انتقال غير مسموح لازم تختبره
  6. اكتب ثلاث أفكار من تخمين الأخطاء وجلسة استكشافية قصيرة (test charter) لنفس الشاشة

المهم يكون كل حالة مربوطة بتقنية واضحة وبسبب اختيارها — مش مجرّد قائمة حالات.

اكشف الحل
  • تقسيم التكافؤ: أقسام غير صالحة (أقل من 1، أكبر من 5000، صفر، نص أو رموز، فاضي) وقسم صالح واحد (1–5000) — حالة واحدة تمثيلية لكل قسم بدل عشرات الحالات
  • القيم الحدّية بثلاث قيم: حول الحد الأدنى 0 و1 و2، وحول الحد الأعلى 4999 و5000 و5001
  • جدول القرار: رصيد كافي + حساب مفعّل ← ينفّذ؛ رصيد كافي + حساب غير مفعّل ← يرفض مع رسالة الحساب؛ رصيد غير كافي + مفعّل ← يرفض مع رسالة الرصيد؛ الاثنين غلط ← يرفض ولازم تحدّد أي رسالة تظهر (هون بتطلع Bugs المواصفات)
  • انتقال الحالات: الانتقالات المسموحة مُنشأ ← بانتظار التأكيد ← منفّذ أو مرفوض أو ملغى؛ والانتقال غير المسموح اللي لازم تختبره: من منفّذ ← ملغى، أو تأكيد طلب ملغى
  • تخمين الأخطاء: مبلغ بفاصلة عشرية أو فاصلة آلاف، ضغط زر التأكيد مرتين بسرعة (تحويل مكرّر)، وانقطاع الشبكة بعد الضغط وقبل الرد
  • Test charter استكشافي: «استكشف شاشة التحويل لمدة 45 دقيقة بالتركيز على حالات الرفض ورسائل الخطأ وسلوك التطبيق مع انقطاع الشبكة» — وسجّل الملاحظات وقت الجلسة
تقدّم الشهادة0%

شاهد 90% من الفيديو حتى ينحسب هذا الدرس مكتمل.

خلصت الدرس؟ 👏خذ استراحة 60 ثانية واصطد bugsلعبة Debug Hunt — بتلعبها عالموبايل كمان
العب هسا

النقاش 🔻

اكتب سؤالك أو ملاحظتك. التعليقات بتظهر بعد المراجعة.