كيفية كتابة حالات الاختبار مع الأمثلة

🚀 ملخص ذكي

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

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

كيفية كتابة حالات الاختبار

ما هي حالة الاختبار؟

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

فكر في حالة الاختبار باعتبارها وصفة للتحقق — يخبرك بالمكونات الدقيقة (بيانات الاختبار)، والعملية (الخطوات التي يجب القيام بها)، وكيف يجب أن يبدو الطبق المثالي (النتيجة المتوقعة).

تساعد حالة الاختبار المكتوبة جيدًا على ضمان ما يلي:

  • البرنامج يلبي متطلبات العمل والمستخدم.
  • الأخطاء أو السلوكيات غير المتوقعة هي تم القبض عليه في وقت مبكر.
  • يمكن أن يكون الاختبار مكررة ومراجعة من قبل أي متخصص في ضمان الجودة.
  • يمكن للفرق تتبع ما هو المتطلب الذي يتحقق منه كل اختبار؟

👉 سجل للحصول على مشروع اختبار البرمجيات المباشر المجاني

خطوات إنشاء حالات الاختبار في الاختبار اليدوي

لنقم بإنشاء حالة اختبار للسيناريو: التحقق من وظيفة تسجيل الدخول

إنشاء حالات اختبار في الاختبار اليدوي

الخطوة 1) ستكون حالة اختبار بسيطة لشرح السيناريو

حالة اختبار # حالة الاختبار Descriptأيون
1 التحقق من الاستجابة عند إدخال بريد إلكتروني وكلمة مرور صالحين

الخطوة 2) اختبر البيانات.
من أجل تنفيذ حالة الاختبار، سوف تحتاج بيانات الاختبار. إضافته أدناه

حالة اختبار # حالة الاختبار Descriptأيون بيانات الاختبار
1 التحقق من الاستجابة عند إدخال بريد إلكتروني وكلمة مرور صالحين البريد الإلكتروني: guru99@email.com
كلمة المرور: lNf9^Oti7^2h

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

الخطوة 3) نفذ الإجراءات.
من أجل تنفيذ حالة اختبار، يحتاج المختبر إلى تنفيذ مجموعة محددة من الإجراءات على AUT. وقد تم توثيق ذلك على النحو التالي:

حالة اختبار # حالة الاختبار Descriptأيون خطوات الاختبار بيانات الاختبار
1 التحقق من الاستجابة عند إدخال بريد إلكتروني وكلمة مرور صالحين 1) أدخل عنوان البريد الإلكتروني

2) أدخل كلمة المرور

3) انقر فوق تسجيل الدخول

البريد الإلكتروني: guru99@email.com

كلمة المرور: lNf9^Oti7^2h

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

الخطوة 4) التحقق من سلوك AUT.
الهدف من حالات الاختبار في اختبار البرمجيات هو التحقق من سلوك وحدة AUT للحصول على النتيجة المتوقعة. يجب توثيق ذلك كما يلي:

حالة اختبار # حالة الاختبار Descriptأيون بيانات الاختبار نتيجة متوقعة
1 التحقق من الاستجابة عند إدخال بريد إلكتروني وكلمة مرور صالحين البريد الإلكتروني: guru99@email.com
كلمة المرور: lNf9^Oti7^2h
يجب أن يكون تسجيل الدخول ناجحا

أثناء وقت تنفيذ الاختبار، سيقوم المُختبر بفحص النتائج المتوقعة مقابل النتائج الفعلية وتعيين حالة النجاح أو الفشل

حالة اختبار # حالة الاختبار Descriptأيون بيانات الاختبار نتيجة متوقعة نتيجة فعلية يتخطى الفشل
1 التحقق من الاستجابة عند إدخال بريد إلكتروني وكلمة مرور صالحين البريد الإلكتروني: guru99@email.com كلمة المرور: lNf9^Oti7^2h يجب أن يكون تسجيل الدخول ناجحا تم تسجيل الدخول بنجاح تجاوز

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

العناصر الرئيسية لحالة الاختبار

تتضمن حالة الاختبار القياسية عادةً ما يلي:

  1. معرف حالة الاختبار - معرف فريد (على سبيل المثال، TC001)
  2. العنوان أو Descriptأيون - ما يثبته الاختبار
  3. الشروط المسبقة - ما يجب أن يكون موجودًا قبل بدء الاختبار
  4. خطوات الاختبار - الإجراءات الدقيقة التي يجب القيام بها
  5. بيانات الاختبار - قيم الإدخال أو المعلمات
  6. نتيجة متوقعة - النتيجة التي يجب أن تراها
  7. نتيجة فعلية - ما حدث بالفعل
  8. الحالة - نجاح أو فشل أو حظر

حالة الاختبار مقابل سيناريو الاختبار

A سيناريو الاختبار يصف ما يجب اختباره - الوظيفة الواسعة أو رحلة المستخدم.

A حالة اختبار، من ناحية أخرى، يشرح كيفية التحقق من هذه الوظيفة - الخطوات الدقيقة والبيانات والنتائج المتوقعة.

بعبارات بسيطة:

  • سيناريو الاختبار = الفكرة ما الذي يجب اختباره.
  • حالة الاختبار = التنفيذ حول كيفية اختبار هذه الفكرة.

فكر في الأمر على هذا النحو -

"إذا كان سيناريو الاختبار هو عنوان الفصل، فإن كل حالة اختبار هي فقرة تشرح هذا الفصل بالتفصيل."

مثال توضيحي:

دعونا نأخذ مثالاً لجعل الأمر أكثر وضوحًا:

سيناريو الاختبار:

"تحقق من وظيفة تسجيل الدخول للموقع."

حالات الاختبار ذات الصلة:

  1. التحقق من تسجيل الدخول باستخدام اسم المستخدم وكلمة المرور الصالحة.
  2. التحقق من رسالة الخطأ بكلمة مرور غير صالحة.
  3. التحقق من تسجيل الدخول باستخدام الحقول الفارغة.
  4. يقوم حقل التحقق من كلمة المرور بإخفاء النص المدخل.

هنا السيناريو هو هدف وظيفي واحد، في حين أن حالات الاختبار تقسمها إلى شروط محددة وقابلة للاختبار.

اقرأ للحصول على مزيد من المعلومات حول الفرق بين حالة الاختبار وسيناريو الاختبار

فوائد كتابة حالات الاختبار عالية الجودة

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

الأخطاء الشائعة التي يجب تجنبها عند كتابة حالات الاختبار

حتى المختبرين ذوي الخبرة يرتكبون أخطاء صغيرة تؤدي إلى إضعاف جودة الاختبار.

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

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

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

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

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

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

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

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

يُمكن أن يكون كلود وChatGPT حليفين قويين في كتابة حالات الاختبار. يُمكن لكليهما تحليل المتطلبات، وإنشاء سيناريوهات اختبار مُفصّلة أو مُحدّدة المعلمات، واقتراح حالات خاصة، وحتى تحويل مُدخلات اللغة الطبيعية إلى نصوص اختبار مُهيكلة (مثل Gherkin أو Pytest).

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