—مشاهدة
الفصل الثالث: الاختبار الساكن — Static Testing
الفصل الثالث من منهج ISTQB CTFL V4 بالعربي: شو يعني اختبار ساكن، شو بيلاقي وشو ما بيلاقي، الفرق بينه وبين الاختبار الديناميكي، وعملية المراجعة بأنواعها وأدوارها وعوامل نجاحها.
قبل ما تبدأ
- خلّص الفصل الأول (مبادئ الاختبار) والفصل الثاني (الاختبار خلال دورة الحياة)
- يكفي تكون شفت user story أو وثيقة متطلبات مرة — بدون خلفية برمجية
الخلاصة بنقاط
- الاختبار الساكن بيفحص المنتج بدون ما يشغّله — بيلاقي الـ Bug نفسه مش العطل
- أي مخرَج مقروء بينفحص: متطلبات، user stories، معايير قبول، تصميم، كود، خطط وحالات اختبار، عقود
- قيمته الحقيقية إنّه بيلاقي Bugs بدري وبأرخص كلفة — قبل ما يصير في كود أصلاً
- أنواع المراجعة: غير رسمية، walkthrough، تقنية، و inspection — الفرق بالرسمية والتوثيق والأدوار
- أهم عامل نجاح: نراجع بدفعات صغيرة، وننقد المنتج مش الشخص
هذا الدرس بيغطّي الفصل الثالث من منهج ISTQB CTFL نسخة 4.0 — Static Testing. الشرح التفصيلي بالفيديو، وهذا ملخّص مرجعي ترجعله قبل الامتحان.
1. شو يعني اختبار ساكن؟
- الاختبار الساكن بيفحص المنتج بدون ما يشغّله — لا كود بيشتغل ولا نظام بينفتح.
- بيشمل نوعين: المراجعات (بشر بيقرأوا المخرَج) والتحليل الساكن (أداة بتفحص الكود أو النموذج آلياً).
- بيلاقي الـ Bug نفسه مباشرة، بينما الاختبار الديناميكي بيلاقي العطل وبعدين بتدوّر على سببه.
- بيقدر يبدأ من أول يوم بالمشروع — قبل ما يصير في شي قابل للتشغيل.
2. شو بينفحص وشو ما بينفحص؟
- أي مخرَج مقروء وقابل للتحليل: متطلبات، user stories ومعايير القبول، وثائق تصميم ومعمارية، كود، خطط اختبار وحالات اختبار، عقود، ونماذج.
- ما بينفحص شي ما بتقدر تقرأه أو تحلّله — مثل ملف تنفيذي من طرف ثالث بدون كود مصدري.
- حتى مخرجات الاختبار نفسها بتنراجع: حالة اختبار مكتوبة غلط Bug بحد ذاته.
3. ليش الاختبار الساكن مهم؟
- بيكشف الـ Bugs بدري، ووقتها كلفة الإصلاح بتكون الأرخص.
- بيلاقي Bugs الاختبار الديناميكي ما بيلاقيها: تناقض بين متطلبين، متطلب ناقص، متطلب غير قابل للاختبار، انحراف عن المعايير، ومشاكل بالتتبّع والتغطية.
- بيحسّن الفهم المشترك بين الفريق والعميل، وبيرفع جودة التوثيق وقابلية الصيانة.
- بيقلّل إعادة العمل لاحقاً — أرخص من إنّك تكتشف بعد شهرين إنّ المتطلب كان مفهوم غلط.
4. ساكن مقابل ديناميكي
- الساكن ما بيشغّل الكود، الديناميكي بيشغّله.
- الساكن بيلاقي Bugs مباشرة، الديناميكي بيلاقي أعطال وبتحتاج debugging لتوصل للBug.
- الساكن بيقدر يلاقي Bugs مستحيل تكتشفها بالتشغيل (كود غير قابل للوصول مثلاً)، والديناميكي بيلاقي أشياء ما بتظهر بالقراءة (أداء تحت حمل، سلوك بيئة الإنتاج).
- الاثنين مكمّلين لبعض — مش بدائل.
5. التغذية الراجعة وعملية المراجعة
- التغذية الراجعة المبكرة والمتكرّرة من أصحاب المصلحة بتمنع سوء فهم المتطلبات، وبتخلّي الفريق يفهم شو بيهم المستخدم فعلاً.
- نشاطات المراجعة: تخطيط ← بدء المراجعة ← مراجعة فردية ← تواصل وتحليل ← إصلاح وإبلاغ.
- الأدوار: المدير (بيقرّر ويوفّر الموارد)، الكاتب (صاحب المخرَج)، الميسّر / المُدير للجلسة، المدوّن، المراجعون، وقائد المراجعة.
- كل مراجعة لازم تنتهي بقرار واضح: مقبول، أو بده جولة ثانية.
6. أنواع المراجعة
- غير رسمية (Informal): بدون عملية موثّقة، الهدف اكتشاف سريع للBugs — أرخصها وأكثرها استعمالاً.
- Walkthrough: الكاتب بيمشي بالمخرَج مع المشاركين — مفيدة للفهم المشترك وتقييم البدائل.
- مراجعة تقنية (Technical review): خبراء تقنيين بيراجعوا لاتخاذ قرار تقني أو حل مشكلة.
- Inspection: الأكثر رسمية — أدوار محدّدة، قواعد دخول وخروج، ومقاييس؛ الهدف اكتشاف أكبر عدد Bugs وتحسين العملية.
- الرسمية بتزيد كل ما زادت المخاطر — مش كل مخرَج بده inspection.
7. عوامل نجاح المراجعة
- أهداف واضحة، ونوع مراجعة مناسب للمخرَج وللمخاطر.
- مراجعة بدفعات صغيرة — الإرهاق بيقتل جودة المراجعة.
- وقت كافٍ ودعم من الإدارة، والمراجعة تصير جزء من ثقافة الفريق.
- الملاحظة على المنتج مش على الشخص — الأمان النفسي شرط أساسي، وإلا بتتحوّل المراجعة لمواجهة.
- تدريب المشاركين، خصوصاً على المراجعات الرسمية.
بالدرس الجاي: الفصل الرابع — تقنيات تصميم الاختبار (Test Analysis and Design).
تمرين
راجع user story وطلّع Bugs قبل ما ينكتب كود
- خذ user story حقيقية من شغلك (أو اكتب وحدة لميزة «نسيت كلمة المرور») مع معايير قبولها
- راجعها كـ reviewer وسجّل كل ملاحظة بجدول: الموقع، الوصف، ونوع الـ Bug (غموض، تناقض، نقص، غير قابل للاختبار)
- حدّد ثلاث معايير قبول مش قابلة للاختبار، وأعد صياغتها بشكل قابل للقياس
- اختر نوع المراجعة المناسب لهذه الحالة (غير رسمية / walkthrough / تقنية / inspection) وبرّر اختيارك
- وزّع أدوار المراجعة على فريقك: مين الكاتب، مين الميسّر، مين المدوّن، ومين المراجعين
- اكتب مثالين على Bugs تتوقّع الاختبار الساكن يلاقيهم والاختبار الديناميكي ما بيلاقيهم — وليش
ما في إجابة وحيدة صح — المهم كل ملاحظة تكون مربوطة بنوع Bug واضح، والملاحظات على المنتج مش على كاتبه.
اكشف الحل
- أمثلة Bugs بالـ story: «النظام لازم يستجيب بسرعة» (غير قابل للاختبار)، رابط إعادة التعيين بدون مدة صلاحية (نقص)، وتناقض بين نص الرسالة ومعيار القبول (تناقض)
- إعادة صياغة قابلة للاختبار: «يستجيب بسرعة» ← «تظهر رسالة التأكيد خلال 3 ثوانٍ على شبكة 4G»، و«رسالة واضحة» ← «تظهر رسالة: تم إرسال رابط إعادة التعيين على بريدك»
- نوع المراجعة: story بسيطة داخل الفريق ← walkthrough أو مراجعة غير رسمية كافية؛ متطلب مالي أو أمني عالي المخاطر ← inspection بأدوار وقواعد دخول وخروج
- الأدوار: الكاتب (محلّل الأعمال أو الـ PO)، الميسّر (بيدير الجلسة ويمنع الانتقاد الشخصي)، المدوّن (بيسجّل الملاحظات)، والمراجعين (QA ومطوّر وربما UX)
- Bugs بيلاقيها الساكن بس: تناقض بين متطلبين، متطلب ناقص ما إله حالة اختبار، وانحراف عن معيار كتابة — لأنّها ما بتظهر كعطل وقت التشغيل
- العملية: تخطيط ← بدء المراجعة ← مراجعة فردية ← تواصل وتحليل الملاحظات ← إصلاح وإبلاغ — ولازم تنتهي بقرار: مقبول ولا بده جولة ثانية
تقدّم الشهادة0%
شاهد 90% من الفيديو حتى ينحسب هذا الدرس مكتمل.

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



النقاش 🔻