كيف يمكن إنشاء والتحقق من صحة بيانات استجابة واجهة برمجة التطبيقات

للاختبار ما إذا كانت بنية البيانات التي يتم إرجاعها بواسطة واجهة معينة موحدة، يمكنك استخدام وحدة توثيق واجهة برمجة التطبيقات من Apidog.

Amir Hassan

Amir Hassan

21 أغسطس 2025

كيف يمكن إنشاء والتحقق من صحة بيانات استجابة واجهة برمجة التطبيقات

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

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

لاختبار ما إذا كانت بنية البيانات التي تعيدها واجهة معينة متسقة، يمكنك استخدام وثائق API في Apidog. أولاً، سيتم تقديم هياكل بيانات شائعة، متبوعة بمثال لتجربة تصميم هياكل البيانات.

مثال

1. المشكلة

افترض أن هناك سيناريو حيث يحتوي كائن على خاصيتين:

النوع: تعداد

القيم: مصفوفة

عندما تكون قيمة النوع ثابتة، يجب أن يكون طول القيم 1؛ عندما تكون قيمة النوع مجموعة، يجب أن يكون طول القيم 2؛ عندما تكون قيمة النوع أخرى، لا يوجد حد لطول القيم.

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

أولاً، قم بإدراج جميع المواصفات المحتملة لبنية البيانات بناءً على المتطلبات:

// النوع A
{
  "type": "fixed",
  "values": ["1"]
}

// النوع B
{
  "type": "range",
  "values": ["1","2"]
}

// النوع C
{
  "type": "other",
  "values": ["1","2","89","67"]
}

2. تعريف البيانات الوهمية

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

المزيف المتقدم

عندما تكون قيمة type fixed، يجب أن يكون طول values 1:

النوع الثابت

عندما تكون قيمة type range، يجب أن يكون طول values 2:

النوع النطاق

عندما تكون قيمة النوع أخرى، لا يوجد حد لطول القيم:

النوع الآخر

عندما تكون قيمة النوع ثابتة، فإن طول القيم ليس 1:

النوع الثابت فاشل

عندما تكون قيمة النوع مجموعة، فإن طول القيم ليس 2:

فشل النوع النطاق

بعد تحديد البيانات الوهمية، يمكنك استدعاء الواجهة والتحقق مما إذا كانت بنية البيانات في الاستجابة المعادة متسقة.

3. تحديد استجابة ناجحة

وفقا للمتطلبات المذكورة أعلاه، هناك ثلاث حالات مقابلة لبيانات الاستجابة المتوقعة وبيانات الاستجابة المعادة، وإلا سيتم إرجاع استجابة خطأ.

3.1 المواصفة 1: استجابة ناجحة للمعامل الثابت

قم بتعيين النوع على نوع السلسلة، وأضف قيمة تعداد الثابت؛ قم بتعيين القيم على نوع المصفوفة، وحدد عدد العناصر المخرجة ليكون 1 فقط، مع عناصر من النوع السلسلة في الداخل. التفاصيل كما يلي:

استجابة ناجحة ثابتة

3.2 المواصفة 2: استجابة ناجحة لمعامل النطاق

قم بتعيين النوع على نوع السلسلة، وأضف قيمة تعداد المجموعة؛ قم بتعيين القيم على نوع المصفوفة، وحدد الحد الأقصى والأدنى لعدد العناصر ليكون 2، مع عناصر من النوع السلسلة في الداخل. التفاصيل كما يلي:

استجابة ناجحة لنطاق

3.3 المواصفة 3: استجابة ناجحة لمعامل آخر

قم بتعيين النوع على نوع السلسلة، وأضف قيمة تعداد أخرى؛ قم بتعيين القيم على نوع المصفوفة، مع عدم وجود حد أقصى وأدنى لعدد العناصر، مع عناصر من النوع السلسلة في الداخل. التفاصيل كما يلي:

استجابة ناجحة أخرى

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

4. التحقق من بيانات الاستجابة

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

4.1 التحقق من المواصفة 1

تحويل "التحقق من الاستجابة" إلى "نجاح ثابت (200)" يعني أنه يجب إخراج قيمة واحدة فقط في مصفوفة "القيم" ليكون التحقق ناجحًا عندما يتم تعيين النوع على "ثابت".

التحقق من النوع الثابت الفاشل

أدخل القيمة 1 في حقل المعامل وانقر على زر "إرسال". نظرًا لأن بيانات الاستجابة المحددة مسبقًا تتوافق مع المواصفات المتوقعة، فستظهر رسالة تفيد بنجاح التحقق ✅.

إرسال

إذا كانت قيمة type ليست fixed، فإن بنية البيانات المعادة قد فشلت في التحقق ❌:

فشل التحقق

إذا كانت قيمة values null أو أكثر من 1، فإن بنية البيانات المعادة قد فشلت في التحقق ❌:

قيم فارغة

4.2 نجاح النطاق (200)

قم بتحويل "التحقق من الاستجابة" إلى "نجاح النطاق (200)". هذا يشير إلى أن قيمتين فقط تعتبران تحققًا ناجحًا في مصفوفة القيم عندما تكون قيمة النوع مجموعة.

نجاح النطاق

إذا كانت قيمة النوع ليست مجموعة، فإن بنية البيانات المعادة قد فشلت في التحقق ❌:

فشل بنية البيانات

إذا كانت قيمة values null أو ليست 2 قيم، فإن التحقق من بنية البيانات سيفشل أيضًا ❌:

بنية النطاق

4.3 نجاح آخر (200)

تحويل "التحقق من الاستجابة" إلى "نجاح آخر (200)" يعني أنه بالنسبة لقيمة type من other، فإن أي عدد من القيم في مصفوفة "القيم" ستؤدي إلى تحقق ناجح. ✅

نجاح آخر

إذا كانت قيمة النوع ليست other، فإن بنية البيانات المعادة ستفشل في التحقق ❌:

فشل آخر

الملخص

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

Explore more

كيفية الوصول إلى واجهة برمجة تطبيقات كلود 3.7 سونيت واختبارها باستخدام أبادوغ

كيفية الوصول إلى واجهة برمجة تطبيقات كلود 3.7 سونيت واختبارها باستخدام أبادوغ

إذا كنت متحمسًا لإصدار Anthropic الأخير، Claude 3.7 Sonnet، وترغب في استكشاف قدراته من خلال واجهة برمجة التطبيقات (API) أثناء اختباره باستخدام Apidog، فأنت في المكان الصحيح. 💡قبل أن نبدأ، دعني أعطيك لمحة سريعة: قم بتنزيل Apidog مجانًا اليوم لتسهيل عملية اختبار واجهة برمجة التطبيقات الخاصة بك، خاصة لاستكشاف ميزات Claude 3.7 Sonnet القوية - مثالي للمطورين الذين يرغبون في اختبار نماذج الذكاء الاصطناعي المتطورة مثل هذا!زر لنبدأ بشرح لماذا يعد Claude 3.7 Sonnet مهمًا. كشفت Anthropic مؤخرًا عن هذا

25 فبراير 2025

كيفية بناء واختبار واجهة برمجة تطبيقات Spring Boot باستخدام Apidog

كيفية بناء واختبار واجهة برمجة تطبيقات Spring Boot باستخدام Apidog

تعلم كيفية إنشاء واجهة برمجة تطبيقات RESTful بسيطة باستخدام Spring Boot واختبارها بأداة تسمى APIdog. Spring Boot هو إطار عمل يسهل تطوير الويب باستخدام Java. Apidog هي أداة تساعدك في اختبار وتصحيح واجهات برمجة التطبيقات الخاصة بك.

29 فبراير 2024

[دليل] تحويل واجهات برمجة التطبيقات SOAP إلى واجهات برمجة التطبيقات REST

[دليل] تحويل واجهات برمجة التطبيقات SOAP إلى واجهات برمجة التطبيقات REST

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

29 فبراير 2024

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

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