انتقل إلى المحتوى

اختبار الصندوق الأسود

من ويكيبيديا، الموسوعة الحرة
مخطط الصندوق الأسود

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

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

إجراءات الاختبار

[عدل]

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

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

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

[عدل]

تتضمن تقنيات تصميم اختبار الصندوق الأسود:

القرصنة

[عدل]

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

انظر أيضًا

[عدل]

مراجع

[عدل]
  1. ^ Jerry Gao؛ H.-S. J. Tsao؛ Ye Wu (2003). Testing and Quality Assurance for Component-based Software. Artech House. ص. 170–. ISBN:978-1-58053-735-3. مؤرشف من الأصل في 2020-01-25.
  2. ^ Milind G. Limaye (2009). Software Testing. Tata McGraw-Hill Education. ص. 216. ISBN:978-0-07-013990-9. مؤرشف من الأصل في 2020-01-25.
  3. ^ Patton، Ron (2005). Software Testing (ط. 2nd). Indianapolis: Sams Publishing. ISBN:978-0672327988. مؤرشف من الأصل في 2020-01-26.
  4. ^ Laycock، Gilbert T. (1993). The Theory and Practice of Specification Based Software Testing (PDF) (dissertation thesis). Department of Computer Science, جامعة شفيلد. مؤرشف من الأصل (PDF) في 2025-05-01. اطلع عليه بتاريخ 2018-01-02.
  5. ^ Milind G. Limaye (2009). Software Testing. Tata McGraw-Hill Education. ص. 216. ISBN:978-0-07-013990-9. مؤرشف من الأصل في 2023-01-23.
  6. ^ Patton، Ron (2005). Software Testing (ط. 2nd). Indianapolis: Sams Publishing. ISBN:978-0672327988.

وصلات خارجية

[عدل]