U3F1ZWV6ZTQ2NzUxODY0ODA1MTI3X0ZyZWUyOTQ5NTExODk5MzE1NA==

تعرف على الblack box testing techniques (ال equivalence partitioning -boundary value analysis )|تطبيق الtesting techniques يساعدك فى تغطية الاجزاء المهمة فى السوفتوير




تعرف على الblack box testing techniques(الequivalence partitioning- boundary value analysis)|تطبيق الtesting techniques يساعدك فى تغطية الاجزاء المهمة فى السوفتوير.


ان شاء الله اليوم سوف نتحدث عن أول تقنيتين من الblack box testing techniques وهم( equivalence partitioning- boundary value analysis) , فى البداية سنتعرف على ماهى الtesting techniques , فى البدايه هناك نوعان من التيستينج بيمر بهم المشروع اللى احنا شغالين عليه وكل نوع  له techniques خاصة به , فنوعى التيستينج التى يمر بهم اى مشروع بنشتغل عليه هما الstatic testing وال dynamic testing, ففى الstatic testing احنا بنعمل تيستينج على الحاجات اللى تخص المشروع ( زى الrequirementوالdesigns) قبل مايكون عندى سوفتوير حقيقى , بينمافى الdynamic testing  احنا بنعمل تيستينج على الreal program , فى الdynamic testing عندى كذا نوع من التيستينج وكل نوع له الtechniques الخاصة به .
فأنواع التيستينج اللى بنعملهم فى الdynamic testing هم الblack box testing (اللى هنتكلم عنه النهارده) والwhite box testing وال experience based testing, كل نوع من الأنواع دى لها الtechniques الخاصة بها , وان شاء الله اليوم سوف نتكلم عن الblack box testing techniques وبالأخص اول تقنيتين منهم وهم (الequivalence partitioning- boundary value analysis) ولكن سنعرف اولا ماهو الblack box testing يمكنك قراءة المستوى الثالث والرابع من levels of testing وهم الsystem testing والacceptance testing لأن الblack box testing بيكون مناسب لهذه الlevels.

ما هو الblack box testing


الblack box testing أو الspecification based testing بيتم فيه اختبار السوفتوير بدون ماأطلع على الكود الخاص به , يعنى بشوف البرنامج بينفذ الوظائف المطلوبة طبقا للrequirements بدون ما أطلع على الinternal instruction, وبالتالى بيكون مناسب للlevels دى الsystem testing والacceptance testing.

قبل مانبدأ فى معرفة الblack box testing techniques لازم تعرف اننا بداخل اى testing technique احنا بنكتب الtest case بنية هدفين:

1-test to pass: بيكون هدفنا اننا نتأكد ان السوفتوير بيعمل الminimum requirements بتاعته وطريق كتابة الtest case بتاعته بتكون simple بنية ان المسستخدم هيستخدم السوفتوير بدون ما يقابله مشاكل.

2-test to fail:هنا بقى بيكون هدفنا اننا نطلع الweakness الموجودة فى السوفتوير وبنطلع bugs على قد مانقدر وبنكتب الtest case بالطريقة اللى تبوظ البرنامج بتاعى.

يلا نبدأ فى الblack box testing techniques

ان شاء الله اليوم هنتكلم عن أول تقنيتين فى الblack box testing techniques وهم(الequivalence partitioning-boundary value analysis).

 Equivalence Partitioning  (الtechnique الأول من الblack box testing techniques)



هذا النوع من الtechniques بيستخدم لما يكون عندى سوفتوير فيه رينج من الداتا علشان أقدر أقسم الinputs الى partitions وبختار منها أرقام تمثل المجموعة بتاعتها علشان أقدر اكتب أقل عدد من الeffective test cases.

فمثلا لوعندى موقع هذا الموقع يسمح للمستخدمين الذين يترواح سنهم من21 الى 60 فقط بتمكينهم من انشاء حساب لهم عليه , فلكى نقوم بتغطية هذة النقطة بالequivalence partitioning هيكون عندى 3اجزاء(3 partitions) جزء بيختبر القيم الخاصة بالمستخدمين اللى سنهم أقل من21, بنختار من هذه المجموعة رقم ونتأكد ان السوفتوير لايقبل هذا الرقم , والجزء الثانى بيختبرالقيم الخاصة بالمستخدمين اللى سنهم أكبر من60, وبنختار من هذه المجموعة رقم ونتأكد ان السوفتوير لايقبل ايضا هذا الرقم , والجزء الثالث بيختبر القيم الخاصة بالمستخدمين اللى سنهم ما بين 21و60 , وبنختار من هذه المجموعة رقم ونتأكد ان السوفتوير يقبل هذا الرقم ويسمح للمستخدم الذى يعبر هذا الرقم عن سنه بإنشاء حساب له على الموقع.


لاحظ أننا فى هذا الtechnique لم نقوم باختبار هذه القيم نفسها(21و60) , ولذلك فإننا لانستخدم هذا الtechnique لوحده وانما بنستخدم معه الboundary value analysis.

وده فيديو بيشرح الequivalence partitioning (الtechnique الأول من الblack box testing techniques).






Boundary Value Analysis  (الtechnique الثانى من الblack box testing techniques)



هذا الtechnique بييستخدم مع الequivalence partitioning علشان يغطى كل الboundaries اللى بيحصل عندهم مشاكل مع الdata input اللى من نوع أرقام وتواريخ وبيتم على مرحلتين:

1-بنحدد الboundaries وبنختبرها فمثلا عندنا فى المثال اللى فوق(مثال انشاء حساب على الموقع لمستخدمين لهم سن معين) الboundaries هى رقم 21 ورقم 60 بنختبرهم وبنشوف السوفتوير بيتعامل معاهم ازاى , يبقى هنا احنا اختبرنا القيم دى نفسها بعكس الequivalence partitioning.

2-بنختبر الرقم الأعلى والأقل لكل boundary وبالتالى فى المثال بتاعنا هنختبر الأرقام 20و22لأن الرقم 20 هو الرقم الأقل (lower boundary) للباوندرى21 , ورقم22 هو الرقم الأعلى(upper boundary) للباوندرى 21 , وهنختبر أيضا الأرقام 59 و61 لأن الرقم 59 هو الرقم الأقل(lower boundary) للباوندرى 60 ,ورقم 61 هو الرقم الأعلى(upper boundary) للباوندرى 60.

يبقى أنا بقى عندى 6 test cases لأنى هعمل test cases لهذه الأرقام 20و 21 و22 و59 و60و61 ,ولأن الأرقام 22 و59 بيعبروا عن نفس المجموعة أونفس الجزء (الجزء الخاص بقيم المستخدمين اللى سنهم مابين 21 و60 ) فمن الممكن ان نكتفى بعمل test case واحدة وليكن 59 وبالتالى يكون عندى 5 test cases فقط.
لاحظ اننا نستخدم هذين التقنيتين ( equivalence partitioning- boundary value analysis) مع الdata inputs اللى من نوع أرقام وتوارخ فقط.

ده فيديو بيشرح الboundary value analysis (الtechnique الثانى من الblack box testing techniques).

تعديل المشاركة Reactions:
author-img

المهندسة / فاطمة الزهراء نصر

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