أتمتة الاختبار. نعم أو لا؟

تم إعداد ترجمة المقال استعدادًا لبدء دورة "Python QA Engineer" .










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



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



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


ما الذي لا يجب أتمتة؟



ما أنواع الاختبارات التي لا يجب عليّ تضمينها في الاختبار الآلي؟ دعنا نسرد المواقف التي لا تحتاج فيها حالات الاختبار إلى أتمتة:



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


لتحسين كفاءة الاختبار الآلي ، ينبغي إيلاء اهتمام خاص لحالات الاختبار. من الضروري إبراز تلك التي تركز على اختبار الجوانب التالية:



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


من أتمتة هذه الوظائف يمكنك الحصول على أكبر فائدة!







اقرأ أكثر:






All Articles