اختبار التحول إلى اليسار

اختبار الإزاحة إلى اليسار [ 1 ] هو منهج لاختبار البرمجيات والأنظمة ، حيث يُجرى الاختبار في مرحلة مبكرة من دورة حياة المشروع (أي يُنقل إلى يسار الجدول الزمني للمشروع). [ 2 ] وهو الشق الأول من مبدأ "الاختبار المبكر والمتكرر". [ 3 ] وقد صاغه لاري سميث عام 2001. [ 4 ] [ 5 ]

الضرر الناتج عن تأخر الاختبار

يهدف إجراء الاختبارات في وقت مبكر إلى منع أنواع الضرر التالية الناجمة عن إجراء الاختبارات في وقت متأخر:

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

أنواع اختبارات التحول إلى اليسار

توجد أربع طرق أساسية لنقل الاختبار إلى مرحلة مبكرة من دورة حياة المنتج (أي إلى اليسار في نموذج V الكلاسيكي ). ويمكن الإشارة إلى هذه الطرق باسم اختبار النقل إلى اليسار التقليدي، [ 6 ] واختبار النقل إلى اليسار التدريجي، واختبار النقل إلى اليسار في منهجيات Agile/ DevOps ، [ 7 ] [ 8 ] واختبار النقل إلى اليسار القائم على النموذج. [ 9 ]

اختبار الإزاحة إلى اليسار التقليدي

كما هو موضح في الشكل التالي، يُحوّل نموذج "التحول إلى اليسار" التقليدي تركيز الاختبار إلى أسفل (وبالتالي قليلاً إلى اليسار) على الجانب الأيمن من نموذج V الكلاسيكي. فبدلاً من التركيز على اختبار القبول واختبار النظام (مثل اختبار واجهة المستخدم الرسومية باستخدام أدوات التسجيل والتشغيل [ 10 ] )، يركز هذا النموذج على اختبار الوحدات واختبار التكامل (مثل استخدام اختبار واجهة برمجة التطبيقات وأدوات الاختبار الحديثة). وقد اكتمل الانتقال إلى اختبار "التحول إلى اليسار" التقليدي إلى حد كبير.

اختبار الإزاحة التدريجية لليسار

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

اختبار التحول إلى اليسار في منهجيات Agile/DevOps

كما هو موضح في الشكل التالي، تتميز مشاريع Agile و DevOps بوجود العديد من دورات التطوير القصيرة (Sprints) بدلاً من دورة واحدة أو عدد قليل من دورات التطوير كما في المثالين السابقين لاختبارات التحول إلى اليسار. وتُعدَّل هذه الدورات القصيرة أيضًا في حال استخدام دورة تطوير مبكرة واحدة أو أكثر لتحديد المتطلبات الأساسية والبنية، أو في حال تطبيق منهجية الاختبار أولاً والتطوير الموجه بالاختبار (TDD). يحدث التحول إلى اليسار لأن أنواع الاختبارات على الجانب الأيمن من أولى هذه الدورات القصيرة تقع على يسار أنواع الاختبارات المقابلة على الجانب الأيمن من الدورات الأكبر التي تحل محلها. وبينما يبدو الشكل التالي متشابهًا بشكل ملحوظ بين Agile وDevOps، فإن اختبار Agile يقتصر عادةً على اختبار التطوير ولا يشمل اختبار التشغيل، الذي يُجرى بعد تشغيل النظام. ويُعد التحول إلى اختبار التحول إلى اليسار في Agile/DevOps شائعًا ومستمرًا.

اختبار التحول إلى اليسار القائم على النموذج

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

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

مراجع

  1. دونالد فايرسميث (23 مارس 2015). "أربعة أنواع من اختبارات التحول إلى اليسار" . مؤرشف من الأصل في 5 سبتمبر 2015. تم الاطلاع عليه في 27 مارس 2015 .
  2. "ما هو اختبار Shift-Left؟" . دليل أدوات ضمان الجودة . 2 يونيو 2026. تم الاطلاع عليه في 5 يونيو 2026 .
  3. مايكروسوفت (2012). "الاختبار المبكر والمتكرر" . مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 27 مارس 2015 .
  4. سميث، لاري (سبتمبر 2001). "اختبار التحول إلى اليسار" . مجلة دكتور دوبز . 26 (9): 56، 62. مؤرشف من الأصل في 21 يونيو 2020. تم الاسترجاع في 4 يونيو 2020 .
  5. "1 سبتمبر: اختبار Shift-Left" . 10 أغسطس 2014. مؤرشف من الأصل في 10 أغسطس 2014. تم الاطلاع عليه في 6 سبتمبر 2019 .
  6. شركة فيلوسيتي بارتنرز (28 يناير 2014). "الاختبار الرشيق - هرم أتمتة الاختبار الرشيق" . مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 27 مارس 2015 .
  7. بول بارز (6 نوفمبر 2014). "التحول إلى اليسار: المناهج والممارسات" . مؤرشف من الأصل في 6 أبريل 2015. تم الاطلاع عليه في 27 مارس 2015 .
  8. ديبي إدواردز (18 سبتمبر 2014). "تمكين نجاح DevOps من خلال اختبار Shift Left المستمر" . IBM . مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 27 مارس 2015 .
  9. دونالد فايرسميث (11 نوفمبر 2013). "استخدام نماذج V للاختبار" . مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 27 مارس 2015 .
  10. مايكروسوفت (2013). "اختبارات يدوية للتسجيل والتشغيل" . مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 27 مارس 2015 .