إطار أتمتة اختبار رشيق

⚡ ملخص ذكي

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

  • 🔘 التوتر الأساسي: يكافئ نظام التشغيل الآلي الاستقرار بينما يكافئ نظام أجايل التغيير، لذا فإن اختيار الاختبار أهم من التغطية.
  • ☑️ تباين الشلال: تعتمد الأتمتة التقليدية على تطبيق ثابت، ومبرمجين خبراء، وتكلفة إعداد عالية.
  • Sprint واقع: نادراً ما تتناسب فترة زمنية تتراوح من أسبوع إلى أربعة أسابيع مع تصميم وبرمجة والتحقق من صحة البرامج النصية الكبيرة.
  • 🧪 ليس استكشافياً: تؤكد الاختبارات الآلية السلوك المعروف؛ فهي لا تكتشف عيوبًا جديدة ومبتكرة.
  • 🛠️ اختيار الأداة: تتعارض الأدوات المرخصة ذات القيود مع التعاون المفتوح الذي تعتمد عليه فرق العمل الرشيقة.
  • 📈 الأنسب: تُعدّ عمليات التحقق المتكررة والغنية بالبيانات من الانحدار، والتي تُعطي نتائج واضحة بالنجاح أو الفشل، قابلة للأتمتة بشكل جيد.

إطار أتمتة اختبار رشيق

اختبار الأتمتة رشيقة

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

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

دمج منهجية أجايل مع الأتمتة في الأتمتة ضمن منهجية أجايل

الأتمتة في منهجية الشلال مقابل الأتمتة في منهجية أجايل

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

اختبار الأتمتة ليس استكشافيًا بطبيعتهلأن دورها الرئيسي هو توفير الوقت وخفض التكاليف. فهي ليست مصممة للكشف عن عيوب جديدة ومبتكرة. يؤكد اختبار الأتمتة في الغالب السلوك الموجود بالفعل.

وبالتالي، فإن الإعدادين يفرضان متطلبات مختلفة تمامًا على مجموعة الاختبارات:

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

كيفية الأتمتة في منهجية أجايل

بحسب تعريفها، تتخلى منهجية أجايل عن التوثيق الممل، مما يتيح تنفيذ الأفكار الجديدة بسرعة والتفاعل بحرية بين الأفراد. وهي تُفضّل العمل الاستكشافي على الأعمال الورقية.

يرفض منهج أجايل التوثيق الممل ويفضل الاختبار الاستكشافي

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

النقاط الأساسية لأتمتة اختبار رشيق

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

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

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

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

أدوات الأتمتة الرشيقة

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

أدوات الأتمتة المرخصة تحجز الموارد بينما تبقى منهجية أجايل أقل تقييداً.

على النقيض من ذلك، تركز منهجية أجايل على التعاون المفتوح والتفاعل الحر بين أعضاء الفريق. أما سياسات الوصول المقيدة فتُعيق هذا التماسك، وقد تُنتج نتائج غير مفيدة وغير مُسهمة في نجاح المشروع.

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

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

اختبار الأتمتة Concepts عند تطبيقها على منهجية أجايل

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

# مفهوم اختبار الأتمتة إجابة منهجية أجايل
1 يجب تكرار الاختبار بشكل متكرر. وهنا يبرز مفهوم اختبار الانحدار.
2 تتطور عملية سير الاختبار والتحقق من صحته وتتغير ببطء مع مرور الوقت. غير مفيد لاختبارات منهجية أجايل، لأن اختبارات أجايل تعني تغييرات متكررة في المتطلبات.
3 يتحقق الاختبار من صحة عملية تجارية أو سير عمل، بدلاً من المظهر والشعور أو اللون أو تخطيط الجدول. يمكن اعتبار هذا السيناريو مرتبطًا بالاختبار اليدوي.
4 ينتج الاختبار نتائج لهيئة تنظيمية تطالب بتسجيل تلك النتائج إلكترونياً وأرشفتها كدليل رسمي على الامتثال. غير مناسب لمنهجية أجايل، حيث أن مستوى التوثيق الشامل ليس جزءًا من منهجية أجايل.
5 الاختبار متكرر للغاية أو يحتوي على العديد من الخطوات التي يجب تنفيذها بنفس الطريقة تمامًا في كل مرة، حيث يجب تجنب إرهاق القائم بالاختبار اليدوي. غير مناسب لمنهجية أجايل.
6 من السهل نسبيًا تحديد نتيجة الاختبار (ناجح أو فاشل) والتقاطها باستخدام أداة التشغيل الآلي المختارة. مناسب لاختبارات الانحدار أثناء اختبار Agile التي تتطلب قدرات متكررة وشاقة.
7 يحتاج الاختبار إلى إدخال كمية كبيرة من البيانات إلى التطبيق. يمكن دمجها كاختبار انحدار.

سبعة مفاهيم لاختبار الأتمتة مقترنة بإجابات منهجية أجايل المناسبة

الأسئلة الشائعة

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

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

رتب المراحل وفقًا للهرم. تُجرى اختبارات الوحدة أولًا لأنها الأسرع، ثم اختبارات التكامل واختبارات واجهة برمجة التطبيقات، ثم مجموعة الاختبارات الشاملة الصغيرة. تظهر الأعطال في المستوى الأقل تكلفة أولًا. Guruيتناول الجزء 99 آليات العمل في التكامل المستمر.

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

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

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

تُعيد مُحدِّدات المواقع ذاتية الإصلاح تحديد العنصر المُنقل من سياقه بدلاً من التعطل، مما يقلل من حالات الفشل الناتجة عن الصيانة. كما تُولِّد النماذج بيانات الاختبار، وتُحدِّد أولويات الاختبارات التي يجب تشغيلها مقابل الفرق، وتُجمِّع حالات الفشل المُكرَّرة بحيث يُجري فريق العمل عملية الفرز مرة واحدة.

يقوم بصياغتها بسرعة. مساعد الطيار جيثب يقوم بإنشاء كائنات الصفحة والبيانات الثابتة والتأكيدات من التعليمات البرمجية الموجودة، مما يزيل الكثير من التعقيد.ping. Revراجع كل مسودة، لأن الاختبار المُنشأ يمكنه تأكيد السلوك الحالي بدلاً من السلوك المطلوب.

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