التصنيفات
اخرى

مشروع التخرج و المرحلة الاخيرة ” الاختبار “

الان مرحلة تسليم مشاريع التخرج وضيق الوقت واكتشاف الاخطاء ومعالجتها ولكن من خلال متابعتي لفترة طويلة لطريقة اختبار الحاسبويين لمشاريع التخرج لاحظت ضياع الوقت في تعديل الكود في Backend وتجربت مباشرة في Frontend دون استخدام ادوات اختبار والتاكد من عمل Backend اولاً.

ابدأ صح :

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

لاحظ ان رسالة الخطأ عامة لا توضح المشكلة بشكل دقيق مجرد كلمة ‘Error‘ بدون تفاصيل اضافية . يجب ان تقوم باخذ تفاصيل الخطأ مجرد تعديل بسيط وسيقوم Exception باعطائك تفاصيل كبيرة عن الخطأ

[separator size=”1″ color=”#F05F33″ style=”” id=”” class=””]

اختبارات CRUD :

الان سوف تنبهر من ماهو CRUD . في الحقيقة هي عمليات قواعد البيانات اضافة،قراءة،تعديل وحذف . فاذا كان مشروعك تطبيق سواء اندرويد او ايفون فحتماً انت تعمل على قواعد بيانات لعمل API لمشروعك ونعلم ان الاساس في البداية هو الانتهاء من Backend للانتقال الى التطبيق واجراء التعديلات والاضافات عليه . لكن اذ كنتم فريق او مجموعة تعمل هنا وهنا ستحتاجون الى تبادل المعلومات سريعاً فالوقت كالسيف .

كيف نتجاوز هذه المشكلة ؟ كيف اختبر PHP قبل ان انتقل للتطبيق واختبرها علي المحك !!

يوجد الكثير من الادوات ولعل اهمها من استخدامي المتواصل هو Postman .يوجد على هيئة برنامج مستقل او اضافة على متصفح Chrome . يستخدم لاختبارات REST API  او “JSON” حيث يوجد فيه العديد من الخيارات كتسجيل الدخول و Header ،، الخ . كما انه يتيح لك عمل دليل للـAPI ومشاركتة مع فريقك.

استخدام Postman :

[contentcards url=”https://www.getpostman.com/” target=”_blank”]

حمل البرنامج او الاضافة وبعد انتهاء التثبيت قم بفتح البرنامج وقم بعمل جولة سريعة ستجد انه واضح وبسيط ولكن تحتاج الى توضيح بعض الاضافات والتلميحات الجميلة والتي ستبهرك حتماً.

– توضيح لواجهة البرنامج  
  1. تاريخ الطلبات السابقة .
  2. المجمواعات مثلا لوعندك اكثر من مشروع تقدر تقسمها الى مجلدات باسماء المشروع .
  3. الاوامر GET,POST,DELETE ,,..
  4. رابط الـAPI او REST API
  5. ارسال الطلب
  6. مكان ظهور النتائج بعد الطلب يمكنك عرضها كـJsonr ,HTML RAW
– اضافة رابط دائم .

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

ستظهر لك صفحة اخرى اكتب فيها اسم مشروعك على سبيل المثال Project 102  وسنقوم بكتابة Key جديد للرابط اعطيته اسم baseUrl واضفت القيمة له https://jsonplaceholder.typicode.com/ 

https://jsonplaceholder.typicode.com/ موقع يعطيك بيانات Json للاختبار عليها لتجربة تطبيقك قبل ربطة مع API حقيقي او لعرض prototype ويعطيك جميع عمليات HTTP CRUD .

طريقة استدعاء الرابط تابع الصورة كتبنا {{}} وبينهم اسم المتغير المراد التعامل معه وفي حالتنا المطلوب مننا الرابط . بامكانك استخدامها مثلا لحفظ access token او بيانات الدخول او Paramaters الطلب . ممما يجعل تعاملك مع البرامج اكثر مرونه بحيث مثلاً لو رفعت API على سيرفر حقيقي ستحتاج فقط تغيير الرابط الاساسي من مكان واحد وسيتم التغيير لجميع الطلبات في ملفك الخاص في البرنامج .

  • امر GET :

    اكثر الطلبات استخدام لسهولتها لانها تعتمد على ارسال Params عن طريق الرابط ويمكن اختبارها بهذا الشكل طبعاً وسنتعلم ايضاً كيفية ارسال Params عن طريق Postman


    ارسلت postId كـParams الى الرابط وسيقوم باعادة النتائج في خانة النتائج بالاسفل وستلاحظ ترتيب البرنامج للمكونات وسهولة استخدامة.

  • امر POST :

    تعلم ان امر POST يحتوي على بيانات ترسل كـBODY بعكس GET لايحتاج الى BODY ولا Params اساساً . ويمكننا في Postman ارسال جميع انواع البيانات الى السيرفر بالاضافة الي امكانية رفع الملفات ايضاً مما يتيح لك خيارات اكبر في عمليات الاختبار والتواصل مع السيرفر .

  • امر PUT & DELETE :

    لا تختلف كثيراً عن سابقيها فيمكنك تجربتها واستخدامها بشكل سهل.

– حفظ الطلبات :

الان نريد نحفظ اوامر الطلبات وجميع الروابط والبيانات المرسلة لمشاركتها مع المجموعة او فريق البرمجة الخاص فينا. سوف نقوم بالضغط على Save سوف يقوم بفتح نافذة جديدة من خلالها سنقوم بكتابة تفاصيل عن الطلب والـParams المطلوبة وجميع المعلومات الضرورية وايضاً سننشئ مجموعة “Collection” جديد وسوف نقوم بتسميته Project 102.

– مشاركة العمل :

الان تريد مشاركة العمل مع المجموعة التي تعمل على التطبيق بحيث يكون العمل متزامن بين الجميع. يقدم Postman خدمة مشاركة Collection مع المجموعات بحيث يمكن لهم الاطلاع عليها واستخدامها وايضاً تحديثها اذا كنتم تعملون اكثر من شخص على REST API . من خلال الـCollection قم بالضغط على الثلاث نقاط وقم باختيار publish docs .

– استخراج الشفرة البرمجية :

بامكانك استخراج الشفرة او الكود مباشرة من Postman لعملية الطلب واضافتها للمشروع دون عناء كتابتها مرة اخرى. يدعم الكثير من اللغات ابتداء من Java وانتهاءاً بـGo 

[separator size=”1″ color=”#F05F33″ style=”” id=”” class=””]

  • استخدام مكتبات TEST :

جميع لغات البرمجة تقدم مكمتبات لعمليات الاختبار بحيث يتم تجربة الكود بالكامل واكتشاف الاخطاء بحيث يسهل عليك عملية الصيانة في وقت لاحق وايضاً تكون عمليات الاختبار سريعة ربما بامر برمجي واحد يقوم بعمليات اختبار لجميع الكلاسات لديك . واهم هذه الاختبارات هو Unit Test بحيث يسمح لك باخنبار الكود كوحدات بحيث كل كود مطلوب منه مهمة محددة يقوم باختبارها “كوحدات”. طبعاً جميع اختبارات Uinit Test متشابهه في منطقها في جميع لغات البرمجة المختلفة. علي سبيل المثال هنا في PHP سنقوم باختبار صحة البريد الالكتروني مباشرة بدلاً من التجربة اليدوية.

هنا شرح بتوسع للـPHP Unit TEST

[contentcards url=”https://code.tutsplus.com/ar/articles/the-beginners-guide-to-unit-testing-what-is-unit-testing–wp-25728″ target=”_blank”]

 قمت بشرح طريقة استخدامة مع الاندرويد اتبع الرابط من هنا :

[contentcards url=”https://aljo3aid.com/unit_test/” target=”_blank”]

[separator size=”1″ color=”#F05F33″ style=”” id=”” class=””]

  • اختبار الواجهات Test UI :

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

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني.