تقنيات اختبار البرمجيات مع أمثلة على تصميم حالة الاختبار

⚡ ملخص ذكي

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

  • المبدأ الأساسي: تختار تقنيات اختبار البرمجيات حالات الاختبار من مجالات الإدخال لتحقيق تغطية عالية بأقل جهد، مع التركيز على المناطق المعرضة للخطأ.
  • تحليل القيمة الحدودية: اختبار الحدود (الحد الأدنى، الحد الأقصى، داخل/خارج فقط) حيث تتجمع الأخطاء هناك، على سبيل المثال، بالنسبة للإدخال 1-10، تحقق من صحة 0،1،2،9،10،11.
  • تقسيم متكافىء: قم بتقسيم المدخلات إلى فئات صالحة/غير صالحة (على سبيل المثال، <1، 1-10، 11-19، 20-30، >30)، واختبار ممثل واحد لكل فئة.
  • اختبار جدول القرار: قم بربط مجموعات الإدخال بالمخرجات في جداول السبب والنتيجة، مما يتيح أزرار الإرسال فقط عند اكتمال جميع الحقول.
  • انتقال الدولة: تتغير الحالة المتسلسلة للنموذج عبر المدخلات (على سبيل المثال، محاولات تسجيل الدخول: يمنح رقم التعريف الشخصي الصحيح حق الوصول؛ ثلاث كتل غير صحيحة للحساب).
  • خطأ التخمين: استفد من الخبرة لاستهداف العيوب المحتملة، باستخدام البيانات التاريخية والمزالق الشائعة لحالات الاختبار المخصصة.

تقنيات اختبار البرمجيات

ما هي تقنية اختبار البرمجيات؟

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

  • تحليل قيمة الحدود
  • تقسيم فئة المعادلة
  • اختبار على أساس جدول القرار
  • انتقال الدولة
  • خطأ في التخمين

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

المبادئ السبعة لتقنيات اختبار البرمجيات

تتبع تقنيات اختبار البرمجيات مجموعة من المبادئ لإجراء عملية الاختبار. تُرشد هذه المبادئ السبعة المُختَبِرين إلى تخطيط الاختبارات وتصميمها وتنفيذها بفعالية. تضمن هذه المبادئ أن يظل الاختبار هادفًا وفعالًا ومتماشيًا مع أهداف المشروع.

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

#1 الأفضل بشكل عاماختبار التطبيق العالمي
9.8/ 10
★ ★ ★ ★ ★
احصل على عرض تجريبي مجاني
PractiTest
9.5/ 10
★ ★ ★ ★ ★
قم بزيارة : PractiTest
Testiny
9.3/ 10
★ ★ ★ ★ ★
قم بزيارة : Testiny
أفضل من أجلاختبار الجمهور وضمان الجودةإدارة الاختبارفرق ضمان الجودة الصغيرة والمتوسطة
ميزة رئيسية✓اختبار التكامل مع جهات خارجية✓إدارة الاختبارات المركزية✓حالات الاختبار اليدوية والآلية
آلية الربط✓جيرا، Slack, TestRail✓جيرا، Jenkins, Slack✓Jira، GitHub، GitLab
تجربة مجانيّةالتجريب المجانيشنومكس يوم التجربة المجانيةالتجريب المجاني
احصل على عرض تجريبي مجانيقم بزيارة : PractiTestقم بزيارة : Testiny

كيف يقوم الذكاء الاصطناعي بتحويل تقنيات اختبار البرمجيات التقليدية؟

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

تقنيات اختبار البرمجيات

تحليل القيمة الحدودية (BVA)

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

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

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

المبادئ التوجيهية لتحليل القيمة الحدودية

  • إذا تم تقييد شرط الإدخال بين القيمتين x وy، فيجب تصميم حالات الاختبار بالقيمتين x وy، بالإضافة إلى القيم التي تكون أعلى وأسفل x وy.
  • إذا كان شرط الإدخال عددًا كبيرًا من القيم، فيجب تطوير حالة الاختبار لاختبار القيم الدنيا والقصوى. هنا، تُختبر أيضًا القيم التي تزيد عن القيم الدنيا والقصوى وتنقص عنها.
  • طبّق الدليلين ١ و٢ على شروط المخرجات. يُعطي هذا مخرجات تعكس الحد الأدنى والحد الأقصى للقيم المتوقعة. كما يختبر القيم التي تقل أو تفوق القيم المتوقعة.

على سبيل المثال:

Input condition is valid between 1 to 10

Boundary values 0,1,2 and 9,10,11

تقسيم فئة المعادلة

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

يعتمد مفهوم تصميم حالات الاختبار هذه على أن حالة اختبار لقيمة تمثيلية لكل فئة تساوي اختبار أي قيمة أخرى من الفئة نفسها. يتيح لك ذلك تحديد فئات التكافؤ الصالحة وغير الصالحة.

على سبيل المثال:

شروط الإدخال صالحة بين

 1 to 10 and 20 to 30

ومن ثم، هناك خمس فئات تكافؤ

--- to 0 (invalid)
1 to 10 (valid)
11 to 19 (invalid)
20 to 30 (valid)
31 to --- (invalid)

يمكنك تحديد القيم من كل فئة، على سبيل المثال،

-2, 3, 15, 25, 45

اقرأ المزيد عن – تحليل القيمة الحدودية واختبار تقسيم التكافؤ

اختبار على أساس جدول القرار

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

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

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

فيما يلي الخطوات اللازمة لإنشاء جدول القرار:

  • قم بإدراج المدخلات في الصفوف
  • أدخل كافة القواعد في العمود
  • املأ الجدول بالمجموعات المختلفة من المدخلات
  • في الصف الأخير، قم بتدوين الإخراج مقابل مجموعة الإدخال.

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

اختبار على أساس جدول القرار

انتقال الدولة

في تقنية انتقال الحالة، تُغيّر تغييرات شروط الإدخال حالة التطبيق قيد الاختبار (AUT). تتيح هذه التقنية للمختبر اختبار سلوك التطبيق قيد الاختبار. يُمكن للمختبر تنفيذ هذه العملية بإدخال شروط إدخال مُختلفة بالتسلسل. في تقنية انتقال الحالة، يُقدّم فريق الاختبار قيم اختبار إدخال إيجابية وسلبية لتقييم سلوك النظام.

المبادئ التوجيهية لانتقال الدولة:

  • يجب استخدام انتقال الحالة عندما يقوم فريق الاختبار باختبار التطبيق لمجموعة محدودة من قيم الإدخال.
  • يجب استخدام تقنية تصميم حالة الاختبار عندما يريد فريق الاختبار اختبار سلسلة من الأحداث التي تحدث في التطبيق قيد الاختبار.

على سبيل المثال:

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

مخطط انتقال الحالة

مخطط انتقال الحالة

في هذا الرسم التخطيطي، عند إدخال المستخدم رقم التعريف الشخصي (PIN) الصحيح، ينتقل إلى حالة "الوصول الممنوح". تم إنشاء الجدول التالي بناءً على الرسم التخطيطي أعلاه:

الجدول الانتقالي للدولة

رقم التعريف الشخصي الصحيح رقم التعريف الشخصي غير صحيح
س1) ابدأ S5 S2
س2) 1st محاولة S5 S3
س3) 2nd محاولة S5 S4
س4) 3rd محاولة S5 S6
S5) تم منح الوصول - -
S6) تم حظر الحساب - -

في الجدول أعلاه، عند إدخال المستخدم لرقم التعريف الشخصي (PIN) الصحيح، تنتقل الحالة إلى "تم منح الوصول". وإذا أدخل المستخدم كلمة مرور خاطئة، ينتقل إلى الحالة التالية. إذا فعل الشيء نفسه،rd الوقت، وسوف يصل إلى حالة الحساب المحظور.

خطأ في التخمين

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

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

إرشادات لتخمين الأخطاء:

  • يجب أن يستخدم الاختبار الخبرة السابقة في اختبار تطبيقات مماثلة
  • فهم النظام قيد الاختبار
  • معرفة أخطاء التنفيذ النموذجية
  • تذكر المناطق المضطربة سابقا
  • تقييم البيانات التاريخية ونتائج الاختبار

مزايا وعيوب تقنيات الاختبار

المزايا:

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

القيود:

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

كيفية اختيار تقنيات الاختبار الصحيحة؟

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

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

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

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

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

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

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

يُسرّع الاختبار الآلي تنفيذ الاختبارات، ويزيد نطاق التغطية، ويُقلّل من الأخطاء البشرية. كما يُمكّن من التكامل المستمر وخطوط التسليم من خلال تشغيل اختبارات قابلة للتكرار والتوسع بكفاءة عبر بيئات ومنصات متنوعة.

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