اختبار القبول

اختبار القبول (Acceptance Testing) مستوى اختبار يركّز على تقرير ما إذا كان النظام سيُقبَل. فاختبار النظام يسأل هل يستوفي النظام كاملاً مواصفاته؛ أما اختبار القبول فيسأل هل النظام صالح للأشخاص وللمؤسسة الذين سيستخدمونه، وجاهز للنشر. ويصفه منهج ISTQB للمستوى التأسيسي (CTFL v4.0) بأنه يركّز على التحقق من الصلاحية (Validation) وعلى إثبات الجاهزية للنشر، والأفضل أن يُجريه المستخدمون المقصودون.

مثال: طلبت مدرسة بناء سجلّ درجات إلكتروني، ونجحت اختبارات النظام لدى المورّد؛ والآن يُدخل المعلمون درجات واقعية لفصل دراسي كامل، ويطبع المكتب الشهادات، ويستعيد فريق تقنية المعلومات البيانات من نسخة احتياطية. وحين تستوفي هذه الفحوص المعايير الواردة في العقد، يقبل مدير المدرسة النظام.

لماذا يهم

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

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

أشكال اختبار القبول

يسمّي منهج ISTQB خمسة أشكال رئيسية: اختبار قبول المستخدم، واختبار القبول التشغيلي، واختبار القبول التعاقدي والتنظيمي (شكل واحد في المنهج، وفحصان مختلفان في الممارسة)، واختبار ألفا، واختبار بيتا. وتختلف في من يُجريها وفي السؤال الذي يجيب عنه كل منها. فالبرمجيات المبنية لعميل واحد تحتاج عادةً إلى قبول تعاقدي واختبار قبول المستخدم، أما المنتج الموجّه إلى السوق، الذي لا يمكن سؤال جميع عملائه المستقبليين مسبقاً، فيُضاف إليه عادةً اختبارا ألفا وبيتا، وقد يُجري موظفو الشركة وشركاؤها في العمل اختبار قبول المستخدم أيضاً.

  • اختبار قبول المستخدم (User Acceptance Testing, UAT): يتحقق المستخدمون المقصودون من قدرتهم على أداء عملهم الحقيقي بالنظام، بعملياتهم وأدوارهم وببيانات واقعية، في بيئة تشغيل حقيقية أو محاكية لها.
  • اختبار القبول التشغيلي (Operational Acceptance Testing, OAT): يتحقق موظفو التشغيل أو إدارة الأنظمة من قدرتهم على إبقاء النظام عاملاً: النسخ الاحتياطي والاستعادة، والتثبيت والترقية، والتعافي من الكوارث، وإدارة المستخدمين، والمراقبة.
  • اختبار القبول التعاقدي (Contractual Acceptance Testing): يفحص البرمجيات المبنية حسب الطلب وفق معايير القبول الواردة في العقد، وينبغي الاتفاق عليها عند توقيعه.
  • اختبار القبول التنظيمي (Regulatory Acceptance Testing): يفحص النظام وفق القوانين واللوائح التي يجب أن يلتزم بها، وقد تشهد جهة تنظيمية النتائج أو تدققها.
  • اختبار ألفا (Alpha Testing): يستخدم المنتجَ عملاءُ محتملون أو حاليون، أو مشغّلون، أو فريق اختبار مستقل، لا المطورون، في موقع الجهة المطوِّرة.
  • اختبار بيتا (Beta Testing): يستخدم العملاء المنتج في مواقعهم وعلى أجهزتهم، بعد اختبار ألفا أو من دونه، فيكشفون عيوباً مرتبطة ببيئات يصعب على الفريق إعادة إنتاجها.
ستة أشكال لاختبار القبول جنباً إلى جنب: من يُجري كلاً منها، والسؤال الذي يجيب عنه، ومن يتخذ قرار القبول، وهو قرار لجهة العمل لا للمختبِر.
الشكلمن يُجريهالسؤال الذي يجيب عنهمن يقرّر
قبول المستخدم (UAT)المستخدمون المقصودون، في بيئة تشغيل حقيقية أو محاكيةهل نستطيع أداء عملنا الحقيقي به؟مالك عملية العمل أو مالك المنتج
القبول التشغيلي (OAT)موظفو التشغيل أو إدارة الأنظمةهل نستطيع تشغيله ونسخه احتياطياً واستعادته ودعمه؟رئيس التشغيل أو مالك الخدمة
القبول التعاقديالمستخدمون أو مختبِرون مستقلونهل يستوفي معايير القبول الواردة في العقد؟ممثل العميل المسمّى في العقد
القبول التنظيميالمستخدمون أو مختبِرون مستقلون، وقد تشهده جهة تنظيميةهل يلتزم بالقوانين واللوائح التي تنطبق عليه؟مسؤول الامتثال، والجهة التنظيمية أو المدقق حيث يُشترط ذلك
ألفا (Alpha)عملاء أو مشغّلون أو فريق اختبار مستقل، في موقع الجهة المطوِّرةهل يعمل لأشخاص من خارج فريق التطوير؟مالك المنتج أو مدير المنتج
بيتا (Beta)العملاء في مواقعهم وعلى أجهزتهمهل يعمل في بيئات حقيقية يصعب على الفريق إعادة إنتاجها؟مالك المنتج أو مدير المنتج

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

معايير القبول هي أساس الاختبار

يحتاج كل اختبار قبول إلى أساس اختبار (Test Basis) يحدد معنى «مقبول». ففي قصة المستخدم (User Story) هو معايير القبول (Acceptance Criteria): الشروط التي يجب أن يستوفيها التنفيذ ليقبله أصحاب المصلحة. ويعتمد اختبار قبول المستخدم أيضاً على عمليات العمل التي يتبعها المستخدمون، ويستخدم القبول التعاقدي معايير العقد، والتنظيمي اللائحة نفسها، والتشغيلي المتطلبات التشغيلية، مثل إجراءات النسخ الاحتياطي والتعافي.

والمعايير الجيدة يُتفق عليها قبل بناء العمل، فيكون القبول فحصاً لا تفاوضاً، وتكون قابلة للاختبار: إذا قرأ المستخدم والمطور والمختبِر المعيار نفسه وصلوا إلى الحكم نفسه. وصياغتها على شكل قواعد أو سيناريوهات Given/When/Then موضوع درس خاص لاحقاً في خريطة التعلم؛ وهنا يكفي أن تميّز المعيار الغامض.

  • غامض: «تُحدَّث أرصدة الإجازات بشكل صحيح». قابل للاختبار: «عندما يعتمد المدير طلباً، ينقص رصيد الإجازة السنوية بعدد أيام العمل المطلوبة، ويُحسب نصف اليوم ⁦0.5⁩».
  • غامض: «النسخ الاحتياطية متوفرة». قابل للاختبار: «تُستعاد النسخة الاحتياطية لليلة الماضية على خادم نظيف بعدد الموظفين والطلبات نفسه الذي كان في بيئة الإنتاج لحظة أخذ النسخة».

جرّبها: مولّد معايير القبول جرّبها: مراجع معايير القبول بالذكاء الاصطناعي

من يقرّر القبول

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

والنتائج الممكنة: القبول؛ أو القبول المشروط، مثل عيوب معروفة لها حل بديل أو موعد إصلاح متفق عليه؛ أو الرفض حتى تُصلح العيوب ويُعاد اختبارها. سجّل القرار مع الإصدار الذي اختُبر والعيوب المفتوحة والشروط؛ وكثير من الفرق تسمّي هذا السجل الاعتماد (Sign-off).

  • اختبار قبول المستخدم: مالك عملية العمل أو مالك المنتج (Product Owner).
  • القبول التشغيلي: رئيس التشغيل أو مالك الخدمة.
  • القبول التعاقدي: ممثل العميل المسمّى في العقد.
  • القبول التنظيمي: مسؤول الامتثال، ومعه الجهة التنظيمية أو المدقق حيث تشترط القواعد ذلك.
  • ألفا وبيتا: مالك المنتج أو مدير المنتج، الذي يقرر الإطلاق العام.
  • المختبِر: يقدّم الأدلة والتوصية (النتائج، والعيوب المفتوحة وخطورتها، أي مقدار الضرر الذي يسببه كل منها، والمخاطر المتبقية)، لكنه لا يقبل أبداً نيابةً عن جهة العمل.

مثال تطبيقي: قبول وحدة الإجازات في بوابة الموارد البشرية

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

  • AC-1 وAC-2 (قبول المستخدم): يقدّم أربعة من موظفي الموارد البشرية وثلاثة مديرين مباشرين طلبات ويعتمدونها ويرفضونها ويلغونها مدة ثلاثة أيام، على نسخة في بيئة staging ببيانات مُجهَّلة الهوية.
  • AC-3 (القبول التعاقدي): يُعدّ فريق ضمان الجودة في الشركة، وهو مستقل عن المورّد، موظفين بأرصدة معروفة، ويتحقق من كل رصيد بعد الاعتماد، بما في ذلك أنصاف الأيام.
  • AC-4 وAC-5 (القبول التشغيلي): يستعيد فريق تشغيل تقنية المعلومات النسخة الاحتياطية لليلة الماضية على خادم نظيف، ويطابق التصدير الليلي إلى نظام الرواتب مع المصدر.
  • AC-6 (القبول التنظيمي): يتحقق مسؤول الامتثال في الموارد البشرية من أنواع الإجازات وسجلاتها وفق متطلبات نظام العمل التي تنطبق على الشركة.
سجل القبول: وحدة الإجازات 1.0، build 1.0.4، بيئة staging

ID     Form         Result   Evidence
AC-1   UAT          Passed   UAT-01..UAT-06
AC-2   UAT          Passed   UAT-07..UAT-10
AC-3   Contractual  Failed   DEF-112 (Major)
AC-4   OAT          Passed   OPS-01 restore log
AC-5   OAT          Passed   OPS-02 payroll export totals
AC-6   Regulatory   Passed   COMP-01 compliance checklist

عيب مفتوح: DEF-112 (رئيسي، Major): تُخصم إجازة نصف اليوم يوماً كاملاً بدل 0.5
توصية ضمان الجودة: القبول بعد نجاح اختبار التأكيد للعيب DEF-112
القرار (مدير الموارد البشرية): قبول مشروط، والتشغيل الفعلي بعد الإصلاح

جرّبها: المتطلبات ← حالات اختبار جرّبها: قصة المستخدم ← سيناريوهات اختبار

أخطاء شائعة

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

من منظور ضمان الجودة

يبدأ عمل المختبِر في القبول مبكراً: ففي جلسات تحسين القصص (Refinement) أو مراجعة العقد تتحقق من أن كل معيار قابل للاختبار، وأن لكل شكل يحتاجه المشروع صاحبَ قرار. وقبل اختبار قبول المستخدم تجهّز البيئة والبيانات الواقعية وحسابات المستخدمين، وتكتب سيناريوهات قصيرة بلغة المستخدمين، وتتأكد من أن البناء اجتاز اختبار النظام.

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

تمرين عملي

خطّط لقبول الطلبات المجدولة في تطبيق توصيل

المطلوب

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

الخطوات
  1. اكتب أشكال اختبار القبول التي تنطبق والتي لا تنطبق، مع السبب.
  2. لكل شكل ينطبق، سمِّ من يُجريه ومن يقرّر.
  3. أعد صياغة «تصل الطلبات المجدولة في موعدها» معياراً قابلاً للاختبار.
إظهار الإجابة النموذجية
الإجابة النموذجية

قبول المستخدم، لأن موظفي المطاعم وموظفي الدعم مستخدمون مقصودون لهم عملهم الخاص: يقبل موظفو المطاعم الطلبات المجدولة ويحضّرونها ضمن سير عملهم الحقيقي، ويجد موظفو الدعم طلباً مجدولاً ويعدّلونه. ويقرّر مالك المنتج المسؤول عن الميزة.

القبول التشغيلي: يفحص فريق التشغيل المهمة التي تُرسل الطلبات إلى المطاعم، وتنبيهاتها، والطلبات المنتظرة بعد إعادة تشغيل الخادم، وخطة التراجع (Rollback). ويقرّر رئيس التشغيل.

القبول التنظيمي: يتحقق فريق الامتثال أو الفريق القانوني من ظهور السعر الكامل قبل الدفع في كل مسار يؤدي إليه، وهو من يقرّر. أما القبول التعاقدي فلا ينطبق إلا إذا حدّد عقد مع المطاعم أو مع شريك معايير لهذه الميزة.

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

قابل للاختبار: «يظهر الطلب في تطبيق المطعم على الجهاز اللوحي قبل وقت التوصيل المختار بـ⁦45⁩ دقيقة، بفارق دقيقة واحدة زيادةً أو نقصاً، ويرى العميل الوقت المختار في شاشة التأكيد وفي سجل الطلبات». وهو يفحص ما يتحكم فيه النظام، أي موعد إرسال الطلب، لا رحلة مندوب التوصيل. والأرقام يختارها مالك المنتج؛ المهم أن توجد أرقام.

أسئلة شائعة

هل اختبار قبول المستخدم هو اختبار القبول نفسه؟

لا. اختبار قبول المستخدم شكل واحد من أشكال اختبار القبول، وهو الذي يُجريه المستخدمون المقصودون. ويشمل اختبار القبول أيضاً القبول التشغيلي والتعاقدي والتنظيمي واختبارَي ألفا وبيتا. وفي الحديث اليومي تقول فرق كثيرة «UAT» عن مرحلة القبول كلها؛ وحين يكون الفرق مهماً، اسأل عن الأشكال المخطط لها فعلاً.

هل يُجري المختبِرون اختبار القبول؟

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

هل يحدث اختبار القبول في النهاية فقط؟

لا. في التطوير التكراري والرشيق (Agile) تُقبل القصص وفق معاييرها خلال كل تكرار، وقد يجري اختبارا ألفا وبيتا قبل الإطلاق العام. وقد يكون في المشروع التقليدي مرحلة قبول رسمية قبل التشغيل الفعلي. أما المنتج الجاهز الذي تشتريه المؤسسة فقد يخضع لاختبار القبول عند تثبيته أو دمجه.

ماذا يتضمن ملخص القبول؟

النتائج لكل معيار قبول مع أدلتها، والعيوب المفتوحة مع خطورتها والمخاطر التي تتركها، وتوصية مع أي شروط، مثل «الإطلاق بعد اختبار التأكيد لعيب واحد خطورته رئيسي (Major)». وعلى هذا الأساس يعتمد صاحب القرار؛ ثم تحتاج العيوب المُصلحة إلى اختبار التأكيد واختبار الانحدار.

المراجع

  • ISTQB Certified Tester Foundation Level (CTFL) v4.0ISTQB · 2023المنهج التأسيسي لاختبار البرمجيات: مستويات الاختبار وأنواعه وتقنيات تصميم الاختبارات وإدارة الاختبار والأدوات.
  • ISTQB GlossaryISTQBالتعريفات القياسية لمصطلحات الاختبار — حالة الاختبار واختبار الانحدار والخطورة والأولوية وتحليل القيم الحدّية وغيرها.
  • Certified Tester Acceptance Testing (CT-AcT)ISTQB · 2019منهج ISTQB التخصصي لاختبار القبول: اختبار قبول المستخدم والقبول التعاقدي والتنظيمي، واختبارا ألفا وبيتا، وتعاون المختبِرين مع مالكي المنتج ومحللي الأعمال.

تدرّب بأدوات متقن

ولّد معايير قبول بصيغة Given/When/Then وقائمة تحقق لتعريف الإنجاز (Definition of Done) من قصة مستخدم.

تصميم الاختبارات

حوّل قائمة متطلبات مرقّمة إلى حالات اختبار قابلة للتتبّع مع مصفوفة تربط المتطلبات بالاختبارات.

تصميم الاختبارات

للتعمّق أكثر

تقدّمك في هذا الموضوع

جزء من مسار تعلم ضمان الجودة