—مشاهدة
الفصل الأول: مبادئ الاختبار — Fundamentals of Testing
الفصل الأول من منهج ISTQB CTFL V4 بالعربي: شو يعني اختبار، ليش ضروري، المبادئ السبعة، نشاطات الاختبار وأدواره، والمهارات المطلوبة — بالفهم مش بالحفظ.
قبل ما تبدأ
- ما بتحتاج أي خلفية برمجية
- يكفي إنك تعرف شو يعني تطبيق ويب أو موبايل وكيف بيستعمله المستخدم
الخلاصة بنقاط
- الاختبار عملية كاملة — التنفيذ جزء صغير منها، وجزء كبير منها ما بيشغّل الكود أصلاً
- QA للعمليّة (وقائي) و QC للمنتج (تصحيحي) — والاختبار جزء من QC مش من QA
- التسلسل اللي لازم يثبت براسك: root cause ← error ← defect ← failure
- المبادئ السبعة أساس أسئلة الامتحان — افهم فكرتها مش نصّها
هذا الدرس بيغطّي الفصل الأول من منهج ISTQB CTFL نسخة 4.0 — Fundamentals of Testing. الشرح التفصيلي بالفيديو، وهذا ملخّص مرجعي ترجعله قبل الامتحان.
1. شو يعني اختبار؟
- الاختبار مش بس «تفتح التطبيق وتجرّب» — التنفيذ (test execution) جزء صغير منه. في كمان تخطيط، تحليل، تصميم، تجهيز، وإغلاق.
- جزء كبير منه ما بيشغّل الكود أصلاً: مراجعة متطلب أو user story كمان اختبار (static testing).
- أهدافه بتتغيّر حسب السياق: بالتطوير المبكر الهدف اكتشاف Bugs، وقبل الإطلاق الهدف بناء ثقة.
- Testing vs Debugging: الاختبار بيقول «في مشكلة» (شغل المختبر)، والـ debugging بيلاقي السبب ويصلحه (شغل المطوّر). بعد الإصلاح بيجي confirmation testing.
2. ليش الاختبار ضروري؟
- بيقلّل خطر الفشل بالإنتاج، وبيعطي أصحاب القرار معلومات موضوعية بدل انطباعات.
- QA مقابل QC: QA للعمليّة (وقائي)، QC للمنتج (تصحيحي) — والاختبار جزء من QC مش من QA.
- التسلسل: متطلب غامض (root cause) ← المطوّر فهم إنّ الخصم قبل الضريبة (error) ← معادلة غلط بالكود (defect) ← مبلغ غلط بالفاتورة (failure).
- مش كل Bug بينتج عطل، ومش كل عطل سببه Bug بالكود — في أسباب بيئية كمان.
3. المبادئ السبعة للاختبار
- الاختبار بيثبت وجود الـ Bugs مش غيابها
- الاختبار الشامل مستحيل
- الاختبار المبكر بيوفّر وقت وفلوس (shift left)
- تجمّع الـ Bugs — defects cluster together
- مفارقة المبيد الحشري — pesticide paradox
- الاختبار بيعتمد على السياق
- وهم غياب الأخطاء — absence-of-errors fallacy
هي أكثر نقطة بيتسأل عنها بالامتحان — بالفيديو بنمشي على كل مبدأ بمثال من شغل حقيقي.
4. النشاطات والـ Testware والأدوار
- النشاطات: تخطيط ← مراقبة وتحكّم ← تحليل ← تصميم ← تجهيز ← تشغيل ← إغلاق. مش متسلسلة بالضرورة، بتتداخل وبتتكرّر.
- Testware: كل مخرجات هذه النشاطات — خطة، شروط اختبار، حالات، بيانات، Scripts، تقارير.
- Traceability: الربط بين قاعدة الاختبار والـ testware — بيفيدك بتحليل أثر التغيير، قياس التغطية، والتقارير.
- الأدوار: إدارة الاختبار (العملية والتخطيط والتقارير) ودور الاختبار (التحليل والتصميم والتنفيذ). بفرق Agile بتتوزّع على الفريق.
5. المهارات والاستقلالية
- مهارات المختبر: معرفة بالمجال والتقنية، تفكير نقدي وفضول، انتباه للتفاصيل، وتواصل جيّد وقت الإبلاغ عن Bug.
- Whole team approach: الجودة مسؤولية الفريق كله، مش المختبر بس.
- استقلالية الاختبار: المطوّر بيختبر كوده ← مطوّر تاني ← مختبر بالفريق ← فريق مستقل ← جهة خارجية. كل ما زادت الاستقلالية زادت فرص اكتشاف الـ Bugs، بس زادت العزلة عن فريق التطوير.
بالدرس الجاي: الفصل الثاني — الاختبار خلال دورة حياة تطوير البرمجيات.
تمرين
طبّق مبادئ الاختبار على تطبيق بتستعمله
- اختر تطبيق بتستعمله يومياً (تطبيق بنك، متجر إلكتروني، أو تطبيق توصيل)
- اكتب هدفين مختلفين للاختبار عليه: واحد لاكتشاف الـ Bugs، وواحد لبناء الثقة قبل الإطلاق
- خذ شاشة تسجيل الدخول وفكّر كم حالة اختبار بدها لو بدنا «اختبار شامل» — واشرح ليش هذا مستحيل عملياً
- حدّد شاشة وحدة بتتوقّع يتجمّع فيها Bugs أكثر من غيرها، وبرّر توقّعك
- خذ حالة اختبار بتنفّذها كل إصدار، واقترح تعديل عليها يمنع مفارقة المبيد الحشري
- اكتب مثال من عندك على error و defect و failure مربوطين ببعض بنفس السيناريو
ما في إجابة وحيدة صح — المهم يكون تبريرك مربوط بمبدأ من المبادئ السبعة، مش مجرّد رأي.
اكشف الحل
- الأهداف: «اكتشاف Bugs بشاشة الدفع قبل الإطلاق» هدف اكتشاف، و«التأكد إن التطبيق بيلبّي متطلبات العميل» هدف بناء ثقة — نفس التطبيق وأهداف مختلفة حسب السياق
- الاختبار الشامل: حقلين نصّيين بس بيعطوا عدد احتمالات عملياً لا نهائي، عشان هيك بنستعمل تقنيات مثل Equivalence Partitioning و Boundary Value بدل ما نجرّب كل شي
- تجمّع الـ Bugs: عادة الشاشات الأعقد أو الأحدث (الدفع، الكوبونات) بيتجمّع فيها أغلب الـ Bugs — فبنركّز جهد الاختبار فيها
- مفارقة المبيد: نفس حالات الاختبار بتوقف تلاقي Bugs جديدة — الحل نراجعها ونضيف حالات وبيانات جديدة
- التسلسل: المطوّر فهم غلط إن الخصم بيتطبّق قبل الضريبة (error) ← كتب المعادلة غلط بالكود (defect) ← المستخدم شاف مبلغ نهائي غلط بالفاتورة (failure)
تقدّم الشهادة0%
شاهد 90% من الفيديو حتى ينحسب هذا الدرس مكتمل.

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



النقاش 🔻