اختبار تطبيقات Go (Golang): من اختبارات الوحدة إلى E2E
300 صفحات
Arabic
PDF
4.5

اختبار تطبيقات Go (Golang): من اختبارات الوحدة إلى E2E

اختبار تطبيقات Go (Golang): من اختبارات الوحدة إلى E2E

المؤلف:

السنة:

ملخص:

كتاب "اختبار تطبيقات Go (Golang)" هو دليل عملي يرشدك خطوة بخطوة من كتابة أول اختبارات الوحدة إلى بناء استراتيجية اختبار شاملة لمشاريع الإنتاج. المؤلف، وهو مطور Go ذو خبرة، يشارك الأساليب المُجرّبة وأفضل الممارسات التي ستساعدك على إنشاء برمجيات موثوقة وقابلة للصيانة.



عن ماذا يتحدث هذا الكتاب؟

يتناول الكتاب جميع الجوانب الرئيسية لاختبار تطبيقات Go:

  • أساسيات الاختبار: هيكل الاختبارات، الدوال t *testing.T، الاختبارات الجدولية، الاختبارات الفرعية والتنفيذ المتوازي.
  • اختبارات الوحدة: اختبار الدوال والطرق والحزم الفردية. استخدام الكائنات الوهمية (gomock, testify) والكائنات البديلة (Stubs) لعزل التبعيات.
  • الاختبارات التكاملية: اختبار التفاعل مع قواعد البيانات، واجهات برمجة التطبيقات الخارجية (APIs) ونظام الملفات. العمل مع testcontainers.
  • اختبارات الأداء والتنميط: كتابة وتحليل اختبارات الأداء، البحث عن الاختناقات باستخدام pprof.
  • اختبارات End-to-End (E2E): اختبار خوادم HTTP، خدمات gRPC وتطبيقات CLI.
  • TDD (التطوير المدفوع بالاختبارات): ممارسة التطوير من خلال الاختبارات على أمثلة واقعية.
  • CI/CD والأتمتة: دمج الاختبارات في خطوط الأنابيب، التشغيل المتوازي، العمل مع تغطية الكود.


لمن هذا الكتاب؟

  • مطورو Go المبتدئون الذين يرغبون في تعلم الاختبار من الصفر.
  • المطورون المتوسطون الذين يرغبون في تنظيم معرفتهم وتعلم تقنيات متقدمة.
  • قادة الفرق والمهندسون المعماريون الذين ينشرون ثقافة الاختبار في فرقهم.
  • المطورون المنتقلون إلى Go من لغات أخرى والذين يبحثون عن ممارسات اختبار خاصة بـ Go.


ماذا ستتعلم؟

  • كيفية كتابة اختبارات قابلة للقراءة وموثوقة وقابلة للصيانة.
  • كيفية استخدام الحزمة المدمجة testing والمكتبات الشائعة (testify, gomock, httptest) بفعالية.
  • كيفية اختبار معالجات HTTP، قواعد البيانات، خدمات gRPC والكود غير المتزامن.
  • كيفية قياس الأداء والعثور على المشكلات باستخدام اختبارات الأداء.
  • كيفية بناء عملية تطوير حيث الاختبارات ليست عبئًا بل أداة لتسريع العمل.
  • كيفية دمج الاختبارات في GitHub Actions و GitLab CI والأنظمة الأخرى.


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



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

توصيات