ما هو اختبار المجال في اختبار البرمجيات؟ (مع مثال)

ما هو اختبار النطاق؟

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

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

يختلف اختبار المجال باختلاف مجال معين، لذا يجب أن تكون لديك معرفة خاصة بالمجال حتى تتمكن من اختبار نظام برمجي.

ممارسة أبسط لاختبار المجال

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

قد يتضمن المجال اختبار أي متغير إدخال واحد أو مجموعة من متغيرات الإدخال.

غالبًا ما يدرس الممارسون أبسط حالات اختبار المجال أقل من اسمين آخرين، “اختبار الحدود” و”تحليل فئة التكافؤ”.

اختبار الحدود - يعتمد تحليل القيمة الحدودية (BVA) على الاختبار عند الحدود بين الأقسام. سنقوم باختبار قيم الإدخال الصالحة وغير الصالحة في القسم/الفئات.

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

ينطبق هذا النموذج المبسط على اختبار النطاق –

  1. فقط لاختبارات متغيرات الإدخال
  2. فقط عند اختباره على مستوى النظام
  3. فقط عندما يتم اختباره مرة واحدة
  4. فقط عندما يتم اختبارها بطريقة سطحية للغاية

ويمكن تبسيطها على النحو التالي:

متغير فئة معادلة فئة صالحة فئة معادلة الفئة غير صالحة الحدود والحالات الخاصة ملاحظة
X 0-100 0
100
<0 -1
> 100 101

التفسير:

  1. إذا كان الحقل يقبل النطاقات من 0 إلى 100، فيجب ألا يقبل الحقل -1 و101 لأنهما إدخالات غير صالحة وتتجاوز الحدود.
  2. يجب أن يقبل الحقل قيمًا مثل 0,100 وأي رقم بينهما.

بناء جدول مثل هذه (في الممارسة العملية)

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

استراتيجية اختبار المجال

أثناء اختبار النطاق، عليك أن تأخذ في الاعتبار following الأشياء،

  1. ما المجال الذي نختبره؟
  2. كيفية تجميع القيم في فئات؟
  3. ما هي قيم الفئات التي سيتم اختبارها؟
  4. كيفية تحديد النتيجة؟

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

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

استراتيجية اختبار المجال

مثال لاختبار المجال

  1. فكر في سيناريو اختبار الإدخال الفردي:

C = a+b، حيث a وb متغيرات الإدخال وC هو متغير الإخراج.

هنا في المثال أعلاه، ليست هناك حاجة لتصنيف أو مجموعة من المتغيرات المطلوبة.

  1. خذ بعين الاعتبار المدخلات المتعددة التالية وسيناريو المخرجات المناسب:

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

وبحسب السيناريو حصلنا على ستة سيناريوهات حسب العمر والمسابقات:

  1. العمر أكبر من 5 سنوات وأقل من 10 سنوات، يجب أن يشارك الصبي في رواية القصص.
  2. العمر >5 و<10 سنوات، يجب على الفتاة المشاركة في Drawing منافسة.
  3. العمر أكبر من 10 أعوام وأقل من 15 عامًا، يجب أن يشارك الصبي في الاختبار.
  4. العمر > 10 و<15 سنة، يجب أن تشارك الفتاة في كتابة المقال.
  5. العمر أقل من 5 سنوات، يجب على الأولاد والبنات المشاركة في مسابقة القوافي.
  6. العمر أكبر من 15 عامًا، يجب على الأولاد والبنات المشاركة في مسابقة الشعر.

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

كيفية تجميع القيم في فئات؟

تقسيم بعض القيم يعني تقسيمها إلى مجموعات فرعية غير متداخلة.

كما ناقشنا سابقًا هناك نوعان من التقسيم:

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

في المثال أعلاه، نقوم بتقسيم القيم إلى مجموعة فرعية أو المجموعة الفرعية. نحن نقسم العمر إلى الفئات التالية:

  1. فئة 1: الأطفال من الفئة العمرية من 5 إلى 10 سنوات
  2. الصف 2 : الأطفال الذين تقل أعمارهم عن 5 سنوات
  3. فئة 3: الأطفال في الفئة العمرية من 10 إلى 15 سنة
  4. فئة 4: الأطفال الذين تزيد أعمارهم عن 15 عامًا.

ما هي قيم الفئات التي سيتم اختبارها؟

يجب أن تكون القيم التي تم اختيارها للاختبار هي قيم حدودية:

  1. تمثل الحدود فئات التكافؤ التي نأخذ عينات منها. من المرجح أن يكشفوا عن خطأ أكثر من أعضاء الفصل الآخرين، لذا فهم ممثلون أفضل.
  2. أفضل ممثل لفئة التكافؤ هو القيمة الموجودة بين النطاق.

على سبيل المثال أعلاه لدينا فولوwing الفئات التي سيتم اختبارها:

على سبيل المثال السيناريو رقم 1:

  1. فئة 1: الأطفال من الفئة العمرية من 5 إلى 10 سنوات (العمر أكبر من 5 سنوات وأقل من 10 سنوات)

قيم الحدود:

  1. يجب أن تكون القيم مساوية أو أقل من 10. ومن ثم، يجب إدراج سن 10 سنوات في هذه الفئة.
  2. يجب أن تكون القيم أكبر من 5. ومن ثم، لا ينبغي إدراج سن 5 سنوات في هذه الفئة.
  3. يجب أن تكون القيم مساوية أو أقل من 10. وبالتالي، لا ينبغي إدراج سن 11 في هذه الفئة.
  4. يجب أن تكون القيم أكبر من 5. وبالتالي، يجب إدراج سن 6 سنوات في هذه الفئة.

قيم قسم التكافؤ:

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

(العمر > 5 و <= 10)

وبما أن القيم من 6 إلى 10 هي قيم صالحة، فيجب التقاط إحدى القيم بين 6,7,8,9،10،8،5 و10. وبالتالي فإن العمر المحدد "XNUMX" هو عمر إدخال صالح للفئة العمرية بين (العمر > XNUMX و<= XNUMX). ويشار إلى هذا النوع من القسم بقسم التكافؤ.

سيناريو القيم الحدودية التي يتعين اتخاذها معادلة تقسيم القيم
الصبي - العمر > 5 و <= 10 عمر الإدخال = 6
عمر الإدخال = 5
عمر الإدخال = 11
عمر الإدخال = 10
عمر الإدخال = 8
فتاة - العمر أكبر من 5 سنوات وأقل من = 10 سنوات عمر الإدخال = 6
عمر الإدخال = 5
عمر الإدخال = 11
عمر الإدخال = 10
عمر الإدخال = 8
الصبي - العمر > 10 و <= 15 عمر الإدخال = 11
عمر الإدخال = 10
عمر الإدخال = 15
عمر الإدخال = 16
عمر الإدخال = 13
فتاة - العمر أكبر من 10 سنوات وأقل من = 15 سنوات عمر الإدخال = 11
عمر الإدخال = 10
عمر الإدخال = 15
عمر الإدخال = 16
عمر الإدخال = 13
العمر<=5 عمر الإدخال = 4
عمر الإدخال = 5
عمر الإدخال = 3
العمر> 15 عمر الإدخال = 15
عمر الإدخال = 16
عمر الإدخال = 25

كيف يمكننا تحديد ما إذا كان البرنامج قد نجح أو فشل في الاختبار؟

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

تحديد نتائج المثال:

تحديد النتائج

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

هيكل اختبار المجال

عادةً ما يتبع المختبرون الخطوات التالية في اختبار النطاق. قد يتم تخصيصها/تخطيها وفقًا لاحتياجات الاختبار لدينا.

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

نبذة عامة

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