لماذا تريد أتمتة الاختبار؟

لماذا تقوم بأتمتة الاختبار؟ ما الفوائد التي نحصل عليها مع أتمتة الاختبار؟

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

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


يمكن أن نتورط في تفاصيل العمل ، والترميز ، والمراجعة ، والتنفيذ ، ونسيان السبب الرئيسي لماذا نحن في الواقع نقوم بأتمتة الاختبار!



لماذا نقوم بأتمتة الاختبار؟

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


زيادة تغطية الاختبار

هذه الإجابة صحيحة تمامًا ، لكن كيف نحدد التغطية؟ إذا كان لدينا 100 اختبار ، كيف يمكننا قياس نسبة التغطية؟

من خلال ممارسة أتمتة الاختبار الناضجة ، يمكنك إجراء مئات الاختبارات في فترة زمنية قصيرة نسبيًا.

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

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


في منشور لمارتن فاولر ، حيث يناقش تغطية الاختبار ، يذكر

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

وفر الوقت

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

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


البحث عن المزيد من الأخطاء

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

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

استبدال أجهزة الاختبار اليدوية

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

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


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

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



حسن الجودة

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

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




إذن ، ما هو السبب الرئيسي لأتمتة الاختبار؟

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

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

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