دليل قصير حول اختبار الانحدار: متى يتم إجراؤه؟

نشرت: 2023-05-23

جدول المحتويات

اختبار الانحدار: لماذا يعد ضروريًا لبرنامجك؟

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

لهذا السبب ، يعد اختبار الانحدار الآن أحد العوامل الدافعة وراء نجاح أو فشل مشاريع تطوير البرامج لأنه يساعد على ضمان عمل برنامجك كما هو مُصمم ، بغض النظر عن التغييرات التي قد تكون أجريتها. في هذه المقالة ، سوف نتعلم أساسيات هذا النوع من الاختبارات مع فريق SE Ranking ، الذي يطور منصة SaaS SEO ويستخدمون اختبارات الانحدار كجزء من روتين التطوير الخاص بهم.

ما هو اختبار الانحدار؟

  • اختبار الانحدار هو نهج للتحقق مما إذا كانت الأجزاء الجديدة والمعدلة لنظام برمجي ما تزال تعمل كما هو متوقع بعد تغييرها.

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

  • على سبيل المثال ، إذا تم تغيير ميزة تسمح للمستخدمين بتسجيل الدخول ، فسيتعين عليك إجراء اختبار يراعي كل نتيجة محتملة لتسجيل الدخول كمستخدم مختلف: باستخدام كلمة مرور غير صحيحة وكلمة مرور صحيحة.

كيف يعمل اختبار الانحدار؟

تتضمن آلية عمل اختبار الانحدار العديد من التقنيات التي يمكن استخدامها أثناء اختبار البرنامج للتأكد من أن التغييرات الجديدة على البرنامج أو منتج البرنامج لا تغير وظائف البرنامج الحالي:

  • أعد اختبار البرنامج بأكمله

يعد اختبار البرنامج بأكمله بعد تعديل واحد أو أكثر من مكوناته أحد تقنيات اختبار الانحدار. يتم ذلك للتأكد من أن الجزء الذي تم تغييره من البرنامج يعمل بشكل صحيح مع الأجزاء غير المعدلة.

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

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

  • اختيار اختبار الانحدار

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

دعونا نشرح هذه الفكرة بمثال:

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

  • تحديد أولويات اختبار الانحدار

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

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

المصدر: Jelvix

متى يمكننا إجراء اختبار الانحدار؟

  • عندما يتم إضافة وظائف جديدة إلى التطبيق

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

  • عندما يتم إصلاح الخلل

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

  • عندما يكون هناك إصلاح مشكلة في الأداء

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

  • عندما يكون هناك تغيير بيئي

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

الفرق بين إعادة الاختبار واختبار الانحدار

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

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

المصدر: أوتور

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

كيف تجري اختبار الانحدار؟

المصدر: Simform

  1. استعد للاختبارات اليدوية والآلية

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

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

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

  1. كشف التغييرات في شفرة المصدر

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

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

  1. إعطاء الأولوية لتلك التغييرات ومتطلبات المنتج

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

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

  1. تحديد نقطة الدخول ومعايير الدخول

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

  1. تحديد نقطة الخروج

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

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

  1. جدولة الاختبارات

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

  • تحديد أهداف الاختبار وغاياته ؛
  • تحديد تبعيات الموارد ؛
  • تحديد مكونات الاختبار التي يجب اختبارها ؛
  • تحديد أعضاء الفريق الذين يحتاجون إلى إجراء الاختبارات ؛
  • اختر إطارًا زمنيًا مناسبًا ؛
  • أكمل مراحل الاختبار.

خاتمة

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