التوسع مع مجموعات الاختبار: تنظيم عالي الأداء لاختبار API الآلي

Sharki

Sharki

26 فبراير 2026

التوسع مع مجموعات الاختبار: تنظيم عالي الأداء لاختبار API الآلي

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

مرحبًا، مستخدمي Apidog! 👋 على مدار العام الماضي، قمنا ببناء منصة اختبار تلقائي شاملة تتمحور حول سيناريوهات الاختبار (Test Scenarios) — وهي تسلسلات سير عمل قابلة لإعادة الاستخدام تربط طلبات واجهة برمجة التطبيقات المتعددة في تدفقات عمل تجارية كاملة. تحل سيناريوهات الاختبار مشكلة "كيفية الاختبار"، لكننا تلقينا ملاحظات متسقة من الفرق حول تحدٍ مختلف: "كيفية تنظيم ما يجب اختباره".


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


اليوم، نقدم Test Suites (مجموعات الاختبار): نوع جديد من الموارد يتيح لك تنظيم وتنفيذ الاختبارات بواسطة القواعد بدلاً من الاختيار الفردي. تقدم مجموعات الاختبار ثلاث قدرات أساسية لسير عمل الاختبار الخاص بك:


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

نظرة عامة على Test Suites في وحدة الاختبار التلقائي
نظرة عامة على مجموعات الاختبار (Test Suites) في وحدة الاختبار التلقائي

إليك نظرة فاحصة على كيفية عمل كل قدرة.

توجيه الاختبار الديناميكي

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

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

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

نحن ندعم وضعين لتناسب احتياجات الاختبار المختلفة:

يوفر الوضع الثابت قائمة ثابتة من الحالات. يمكنك تحديد السيناريوهات التي تريد تضمينها بدقة، وتبقى هذه القائمة دون تغيير حتى تقوم بتعديلها. يعمل هذا بشكل جيد لاختبارات Smoke Tests — وهي مجموعة منتقاة من 5-15 سيناريو حاسم نادرًا ما تتغير ولكنها تُشغَّل بشكل متكرر.

الوضع الثابت مع مربعات اختيار للاختيار الفردي للحالات
الوضع الثابت مع مربعات اختيار للاختيار الفردي للحالات

يستخدم الوضع الديناميكي قواعد لتضمين الحالات المطابقة تلقائيًا. حدد شرطًا (جميع الحالات في دليل "الدفع" بأولوية P0)، وستظل المجموعة محدثة مع تطور مكتبة الاختبار الخاصة بك. يعمل هذا بشكل جيد لاختبارات الانحدار للوحدات، حيث تتغير أعداد الحالات بانتظام.

الوضع الديناميكي يظهر معاينة للقراءة فقط مع ملاحظة التضمين التلقائي
الوضع الديناميكي يظهر معاينة للقراءة فقط مع ملاحظة التضمين التلقائي

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

التنفيذ المتوازي

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

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

التبديل بين الوضع التسلسلي/المتوازي في إعدادات تشغيل المجموعة
التبديل بين الوضع التسلسلي/المتوازي في إعدادات تشغيل المجموعة

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

تقارير اختبار منظمة

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

تُنظّم تقارير مجموعات الاختبار حول منطق مؤسستك. تُجمّع النتائج حسب الشروط التي حددتها — حسب الوحدة، حسب الأولوية، حسب العلامة. يمكنك رؤية "وحدة الدفع: 45/47 نجحت" و "وحدة المستخدم: 32/32 نجحت" على الفور دون الحاجة إلى التمرير عبر الإدخالات الفردية.

نظرة عامة على تقرير على مستوى المجموعة يوضح معدلات النجاح حسب مجموعات الوحدة/العلامات
نظرة عامة على تقرير على مستوى المجموعة يوضح معدلات النجاح حسب مجموعات الوحدة/العلامات

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

عرض تقرير موسع يوضح نتائج السيناريو الفردية مع تفاصيل الفشل
عرض تقرير موسع يوضح نتائج السيناريو الفردية مع تفاصيل الفشل

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

تكوين موحد مع تجاوزات مرنة

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

افتراضيًا، يعمل كل سيناريو بتكوينه المحفوظ — وهو السلوك الأكثر سهولة. بالنسبة لإعدادات البيئة على وجه التحديد، توفر المجموعة محدد بيئة موحد يمكن للسيناريوهات أن ترثه. يتيح لك هذا تبديل مجموعة الانحدار بأكملها من بيئة التطوير إلى الإنتاج بتغيير واحد.

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

إعداد تشغيل المجموعة مع محدد البيئة والخيارات المتقدمة
إعداد تشغيل المجموعة مع محدد البيئة والخيارات المتقدمة

مجموعات الاختبار (Test Suites) مقابل التشغيلات الدفعية للمجلدات

يدعم Apidog بالفعل التشغيلات الدفعية على مستوى المجلدات. مجموعات الاختبار تخدم غرضًا مختلفًا.

تنظم المجلدات الحالات حسب الهيكل المادي. تنتمي حالة واحدة إلى مجلد واحد.

تنظم مجموعات الاختبار الحالات بواسطة قواعد منطقية. يمكن أن تنتمي حالة واحدة إلى مجموعات متعددة في وقت واحد.

على سبيل المثال: يمكن أن تظهر حالة اختبار دفع من نوع P0 في كل من "اختبار الانحدار لوحدة الدفع" (جميع حالات P0/P1 الموسومة بالدفع) و "اختبار الدخان الكامل" (جميع حالات P0 عبر النظام). تتيح لك هذه المرونة بناء وحدات تنفيذ اختبار قابلة لإعادة الاستخدام لسيناريوهات مختلفة — اختبارات الدخان التي تُشغل عند كل عملية دفع (commit)، واختبار الانحدار الكامل قبل الإصدارات، وفحوصات السلامة المجدولة في الإنتاج.

القدرة
الغرض
الأفضل لـ
سيناريو الاختبار
تنسيق تدفقات العمل
تحديد تدفقات عمل الاختبار الفردية
المجلد
التنظيم المادي
تعاون الفريق، إدارة الحالات
التشغيل الدفعة للمجلدات
التنفيذ السريع
الاختبار الاستكشافي، اختبار الانحدار المخصص
مجموعة الاختبار
وحدة تنفيذ قابلة لإعادة الاستخدام
اختبار الانحدار للإصدار، اختبارات الدخان، المراقبة المجدولة

ما نخطط لبنائه لاحقًا

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

كيف تبدأ

مجموعات الاختبار متاحة الآن في Apidog. أنشئ مجموعتك الأولى من وحدة الاختبار التلقائي، حدد الوضع الثابت أو الديناميكي، حدد شروطك، ثم قم بالتشغيل. ادمجها مع خط أنابيب CI/CD الخاص بك باستخدام واجهة سطر الأوامر (CLI) لتشغيل المجموعات عند دمج التعليمات البرمجية أو حسب الجدول الزمني.

انضم إلى المحادثة

نود أن نعرف كيف تتناسب مجموعات الاختبار مع سير عملك. شاركنا ملاحظاتك في قنوات مجتمعنا. تواصل مع زملائك مهندسي واجهات برمجة التطبيقات وفريق Apidog:

اختبار سعيد!

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات