كيفية إنشاء مجموعة اختبار وحالة اختبار في SoapUI

فهم بروتوكول SOAP

قبل أن نقوم بإنشاء حالة اختبار SOAPUI، دعونا نفهم الأساسيات حول بروتوكول SOAP. سيساعدك هذا على استخدام SOAP UI لاختبار طلبات SOAP والاستجابة لها بشكل فعال.

SOAP تعني بروتوكول الوصول إلى كائن بسيط. فيما يلي خصائص بروتوكول SOAP.

  • وهو بروتوكول قائم على XML للتواصل بين نظامين مختلفين.
  • إنها منصة ولغة مستقلة. ومن ثم، تم تطوير نظام باستخدام Java يمكنه التواصل مع نظام تم تطويره في .NET.
  • يتم نقل طلبات/استجابة SOAP عبر HTTP.

تعرف على تنسيق رسالة SOAP

رسالة SOAP عبارة عن مستند XML عادي يحتوي على العناصر التالية. يمكن أن تكون الرسالة إما رسالة طلب أو رسالة استجابة.

تنسيق رسالة الصابون
تنسيق رسالة الصابون

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

إنشاء مشروع SOAP

الخطوة 1) الآن، اعتمادًا على المشروع، نحتاج إلى استيراد بروتوكول SOAP/REST. سنقوم بإنشاء مشروع SOAP جديد.

إنشاء مشروع SOAP جديد

الخطوة 2) سوف نستخدم طلب SOAP التالي http://www.dneonline.com/calculator.asmx?wsdl

  1. أدخل اسم المشروع
  2. أدخل مسار طلب WSDL. في هذه الحالة، http://www.dneonline.com/calculator.asmx?wsdl
  3. انقر OK

إنشاء مشروع SOAP

ملاحظة:

  • إنشاء طلب عينة لجميع العمليات؟ يقوم بإنشاء طلب عينة لجميع العمليات المتاحة في WSDL المحدد. بمجرد إدخال عنوان WSDL، يتم تحديد هذا الخيار تلقائيًا. يمكنك إلغاء تحديده.
  • إنشاء مجموعة اختبار لـ WSDL المستوردة: يقوم بإنشاء مجموعة اختبار SoapUI داخل المشروع لـ WSDL المستورد.
  • المسارات النسبية: تمكن المستخدم من حفظ جميع الملفات المتعلقة بملف المشروع.

الخطوة 3) عند إنشاء مشروع SOAP باستخدام WSDL المذكور أعلاه، سنتمكن من رؤية وجود عمليتين سيتم استيرادهما إلى المشروع.

إنشاء مشروع SOAP

الخطوة 4) قم بتوسيع الطلب الأول وانقر بزر الماوس الأيمن على "إضافة". ثم اضغط على "طلب جديد".

إنشاء مشروع SOAP

ثم انقر فوق "موافق". سيعرض طلب SOAP بتنسيق XML

إنشاء مشروع SOAP

  1. أدخل "intA" و"intB"
  2. انقر على زر الإرسال
  3. سيتم عرض استجابة XML في الجزء الأيمن.

إنشاء مشروع SOAP

قد تتساءل لماذا إنشاء حالات الاختبار؟ عندما يمكنك اختبار خدمة الويب مباشرة هنا...

حسنًا، يمكنك إرسال طلب لعملية واحدة. ماذا عن العمليات الأخرى؟ كم عدد مجموعات المدخلات للإضافات التي يمكنك إجراؤها باستخدام هذه العملية؟ يجب عليك تعديل الطلب لكل مجموعة على حدة.

على سبيل المثال: إذا كنت تريد الإضافة من 4 إلى 4 بدلاً من 5 إلى 5... فأنت بحاجة إلى تحرير العملية مرة أخرى. لذا، يتعين على المرء إنشاء مجموعة/حالات اختبار لاختبار جميع السيناريوهات المحتملة دون الحاجة إلى تحرير العملية نفسها مباشرةً.

كيفية إنشاء مجموعة اختبار في SoapUI

فيما يلي خطوات إنشاء Test Suite في SoapUI:

الخطوة 1) انقر بزر الماوس الأيمن على جذر المشروع

داخل المشروع، يمكن للمختبرين إنشاء مجموعة اختبار عن طريق النقر بزر الماوس الأيمن على جذر المشروع.

إنشاء مجموعة اختبار في SoapUI

الخطوة 2) أدخل تفاصيل مجموعة الاختبار

نحتاج إلى إدخال اسم مجموعة الاختبار والضغط على "موافق".

إنشاء مجموعة اختبار في SoapUI

الخطوة 3) التحقق من مجموعة الاختبار التي تم إنشاؤها

يتم عرض مجموعة الاختبار التي تم إنشاؤها في جزء المستعرض كما هو موضح أدناه.

إنشاء مجموعة اختبار في SoapUI

الخطوة 4) افتح مجموعة الاختبار

يتم فتح نافذة مجموعة الاختبار في الجزء الأيمن. بما أننا أنشأنا للتو، لا توجد حالات اختبار لـ SoapUI. وبالتالي يتم تعطيل كافة الخيارات.

إنشاء مجموعة اختبار في SoapUI

كيفية إنشاء حالة اختبار في SoapUI

فيما يلي عملية خطوة بخطوة لإنشاء حالة اختبار في SoapUI:

الخطوة 1) ضمن مجموعة الاختبار، يمكننا إنشاء اختبارات متعددة عن طريق النقر بزر الماوس الأيمن على "مجموعة الاختبار" واختيار "New TestCase".

إنشاء حالة اختبار في SoapUI

الخطوة 2) حدد اسم ملف حالة الاختبار وانقر فوق "موافق".

إنشاء حالة اختبار في SoapUI

الخطوة 3) تحتوي حالة الاختبار التي تم إنشاؤها على صفر خطوات كما هو موضح أدناه.

إنشاء حالة اختبار في SoapUI

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

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

الخطوة 4) يمكننا إدراج مجموعة متنوعة من خطوات الاختبار عن طريق النقر بزر الماوس الأيمن على خطوات الاختبار واختيار خطوة اختبار مناسبة كما هو موضح أدناه. لذلك، إذا كنت تريد اختبار خدمة ويب REST، فستختار طلب اختبار REST.

إنشاء حالة اختبار في SoapUI

إضافة خطوة اختبارية في SoapUI

الآن دعونا نضيف خطوة اختبار للتحقق من صحة طلب اختبار SOAP المستورد:

الخطوة 1) أضف خطوة جديدة "طلب SOAP" كما هو موضح أدناه.

إضافة خطوة اختبارية في SoapUI

الخطوة 2) أدخل اسم الخطوة وانقر فوق "موافق".

إضافة خطوة اختبارية في SoapUI

الخطوة 3) عند النقر فوق "موافق"، تظهر نافذة حوار لاختيار العملية التي تريد استدعاؤها. يتم سرد كافة العمليات، ويمكن للمستخدم اختيار العملية التي يرغب في استدعائها.

  • هناك العديد من العمليات التي سيتم سردها. Operaالإصدارات هي نفسها باستثناء إصدار SOAP المستخدم. CalculatorSoap - يستخدم الإصدار 1.1 من SOAP بينما يستخدم CalculatorSoap12 الإصدار 1.2 من SOAP
  • الإصدار لا يهم بالنسبة لنا في هذا السياق. وبالتالي يمكنك اختيار واحد من اختيارك.

    إضافة خطوة اختبارية في SoapUI

  • عند تحديد العملية، انقر فوق "موافق"

    إضافة خطوة اختبارية في SoapUI

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

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

إضافة خطوة اختبارية في SoapUI

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

الخطوة 5) عند إنشاء حالة الاختبار، يظهر طلب XML أدناه. تم شرح بنية XML في اللقطة أدناه.

إضافة خطوة اختبارية في SoapUI

الخطوة 6) تمت الآن زيادة عدد خطوات الاختبار إلى خطوة واحدة لأننا أضفنا للتو خطوة اختبار واحدة. وبالمثل، عند إضافة خطوة اختبارات التحميل والأمان، سيتم زيادة الرقم المقابل تلقائيًا بناءً على عدد الخطوات المضافة.

إضافة خطوة اختبارية في SoapUI

إرسال الطلب يدويًا وقراءة الاستجابة في SoapUI

الخطوة 1) نود أن نضيف رقمين صحيحين.

  • إنتا – 5
  • إنتب – 5

المقبل،

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

إرسال الطلب يدويًا وقراءة الرد

الخطوة 2) عند إرسال طلب، تتم معالجة طلب خدمة الويب بواسطة خادم الويب ويرسل الرد مرة أخرى كما هو موضح أدناه.

ومن خلال قراءة الرد، يمكننا أن نستنتج أن 5 زائد 5 يساوي 10.

إرسال الطلب يدويًا وقراءة الرد

فهم استجابة الصابون ولوحات السجل

كما هو موضح في بداية هذا البرنامج التعليمي لاختبار SoapUI، يتم نقل رسائل SOAP عبر بروتوكول HTTP. دعونا نلقي نظرة على رسائل RAW. سيساعدنا هذا في معرفة كيفية نقل طلب SOAP والاستجابة له عبر HTTP.

الخطوة 1) انقر فوق علامة التبويب "RAW" في نافذة طلب SOAP-UI.

  1. يتم نشر الطلب على خادم الويب. ومن ثم، يتم استخدام طريقة POST لـ Http.
  2. يتم نقل طلب SOAP في نص رسالة Http.

لوحات الاستجابة والسجل

الخطوة 2) انقر فوق علامة التبويب "RAW". في نافذة استجابة SOAP-UI لفهم كيفية إرسال الاستجابة عبر HTTP.

  1. بعد معالجة الطلب يظهر رمز الاستجابة Http (200) مما يعني نجاح الطلب. لقد قام خادم الويب بمعالجتها بنجاح.
  2. يتم إرسال استجابة SOAP مرة أخرى إلى العميل كجزء من نص رسالة HTTP.

لوحات الاستجابة والسجل

لقطة سريعة لأكواد استجابة Http لسهولة الفهم والتصحيح. سيساعدك الجدول أدناه على حل المشكلات بناءً على رمز HTTP المستلم من خادم الويب.

كود المتشعب الوصف
1xx: معلوماتية - وهذا يعني استلام الطلب واستمرار العملية.
2xx: نجاح - تم استلام الإجراء وفهمه وقبوله بنجاح.
3xx: إعادة التوجيه – وهذا يعني أنه يجب اتخاذ المزيد من الإجراءات لإكمال الطلب.
4xx: خطأ العميل – وهذا يعني أن الطلب يحتوي على بناء جملة سيئ أو لا يمكن تنفيذه
5xx: خطأ في الخادم - فشل الخادم في تلبية طلب صالح على ما يبدو

الخطوة 3) دعونا نفهم المعلومات الأخرى التي يتم عرضها في نافذة حالة الاختبار.

لوحات الاستجابة والسجل

  1. قم بتمثيل NO header في الطلب الذي يتم إرساله
  2. لا يمثل أي مرفقات في الطلب الذي يتم إرساله إلى خادم الويب.
  3. يمثل 10 معلومات رأسية ويتم عرضها عند النقر عليها.
  4. يمثل عدم وجود مرفقات من رسالة الرد.

جزء السجلات:

يحتوي جزء السجلات على معلومات كاملة فيما يتعلق بالمعاملة بين العميل والخادم. سيتمكن المستخدمون من رؤية علامات تبويب جزء السجل كما هو موضح أدناه. سنناقش أجزاء السجل الأكثر استخدامًا عند العمل مع SOAP-UI.

جزء السجلات

سجل واجهة المستخدم الصابونية – يعرض معلومات الاستجابة من خادم الويب. يتم تخزين نفس المعلومات في ملف Soapui.log الخاص بالمجلد المثبت SOAP-UI ضمن دليل "bin".

سجل واجهة المستخدم الصابونية

سجل المتشعب – يعرض كافة عمليات نقل حزم HTTP. يتم عرض جميع المعلومات الموجودة في "RAW" في سجل HTTP.

سجل المتشعب

سجل الأخطاء – يعرض سجل الأخطاء جميع الأخطاء التي واجهناها أثناء جلسة المشروع بأكملها. تتوفر نفس المعلومات في "soapui-errors.log" الموجود في دليل "bin" لموقع تثبيت SOAP UI.

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

سجل الذاكرة

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

تلخيص هذه التدوينة بـ: