اختبار قائم على الكلمات المفتاحية

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

ملخص

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

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

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

أبجدهـ
.اسمعنوانشفرة البريدمدينة
أدخل العميلجين سميث6 هاي ستريتSE25 6EPلندن

لإدخال عميل آخر، يقوم المُختبِر بإنشاء صف جديد في الجدول باستخدام كلمة "إدخال عميل" ككلمة مفتاحية، ثم يُدخل بيانات العميل الجديد في الأعمدة التالية. لا داعي لإعادة سرد جميع الإجراءات المُضمنة.

يمكنك من خلاله تصميم حالات الاختبار الخاصة بك عن طريق:

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

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

المزايا

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

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

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

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

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

يختلف تصميم الاختبار عن أعمال التصميم التي ينبغي القيام بها لتحديد كيفية بناء تطبيق الاختبار الخاص بك.

المنهجية

تقسم منهجية الاختبار القائمة على الكلمات المفتاحية عملية تنفيذ الاختبار إلى عدة مراحل:

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

تعريف

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

يُعدّ الاختبار خطوةً أساسيةً في أي عملية تطوير، ويتمثل في تطبيق سلسلة من الاختبارات أو عمليات التحقق على عنصرٍ ما (اختبار النظام/البرمجيات - SUT). مع الأخذ في الاعتبار أن الاختبار لا يُظهر سوى وجود الأخطاء، وليس عدم وجودها. في اختبار النظام في الوقت الحقيقي، لا يكفي التحقق مما إذا كان النظام قيد الاختبار يُنتج المخرجات الصحيحة، بل يجب أيضًا التحقق من أن الوقت المستغرق لإنتاج تلك المخرجات يتوافق مع المتوقع. علاوةً على ذلك، قد يعتمد توقيت هذه المخرجات على توقيت المدخلات. وبدوره، يُحدد توقيت المدخلات المستقبلية من خلال المخرجات. [ 2 ]

أتمتة تنفيذ الاختبار

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

تستخدم منهجيات أخرى مرحلة تنفيذ متكاملة. فبدلاً من فصل مهام تصميم الاختبار وهندسة الاختبار، يُعد تصميم الاختبار هو نفسه أتمتة الاختبار. تُنشأ الكلمات المفتاحية، مثل "تعديل" أو "تحقق"، باستخدام أدوات كُتبت فيها التعليمات البرمجية اللازمة مسبقًا. وهذا يُغني عن الحاجة إلى مهندسين إضافيين في عملية الاختبار، لأن تنفيذ الكلمات المفتاحية مُدمجٌ في الأداة نفسها. ومن الأمثلة على ذلك GUIdancer و QTP .

الإيجابيات

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

السلبيات

  • وقت أطول للوصول إلى السوق (مقارنة بالاختبار اليدوي أو تقنية التسجيل وإعادة التشغيل)
  • منحنى تعلم مرتفع إلى حد ما في البداية

انظر أيضاً

مراجع

  1. 1 2 فاوغت، داني ر. (نوفمبر 2004). "الاختبار القائم على الكلمات المفتاحية" . ستيكي مايندز . هندسة جودة البرمجيات . تم الاسترجاع في 12 سبتمبر 2012 .
  2. 1 2 ماندورينو، خوسيه إل. (يوليو 2014). "إدارة وتطبيق التحقق من الصحة في أنظمة RT (الوقت الحقيقي)". UTIU.{{cite web}}: مفقود أو فارغ |url=( مساعدة )