❞ كتاب The Case Against Unit Testing in Software Development ❝  ⏤ ويل وارنر

❞ كتاب The Case Against Unit Testing in Software Development ❝ ⏤ ويل وارنر

وصف قصير عن الكتاب :


في برمجة الكمبيوتر ، يعد اختبار الوحدة طريقة اختبار برمجية يتم من خلالها اختبار الوحدات الفردية من التعليمات البرمجية المصدر - مجموعات من وحدة أو أكثر من وحدات برامج الكمبيوتر جنبًا إلى جنب مع بيانات التحكم المرتبطة بها ، وإجراءات الاستخدام ، وإجراءات التشغيل - لتحديد ما إذا كانت مناسبة للاستخدام .
قبل اختبار الوحدة ، كانت أدوات اختبار الالتقاط وإعادة التشغيل هي القاعدة. في عام 1997 ، قام كينت بيك وإريك جاما بتطوير وإصدار JUnit ، وهو إطار اختبار وحدة أصبح شائعًا لدى مطوري Java. تبنت Google الاختبار الآلي في الفترة من 2005 إلى 2006 تقريبًا.
عادةً ما تكون اختبارات الوحدة عبارة عن اختبارات آلية يكتبها ويديرها مطورو البرامج للتأكد من أن قسمًا من التطبيق (يُعرف باسم "الوحدة") يلبي تصميمه ويتصرف على النحو المنشود. في البرمجة الإجرائية ، يمكن أن تكون الوحدة وحدة كاملة ، ولكنها أكثر شيوعًا هي وظيفة أو إجراء فردي. في البرمجة الموجهة للكائنات ، غالبًا ما تكون الوحدة واجهة كاملة ، مثل فئة أو طريقة فردية. من خلال كتابة الاختبارات أولاً لأصغر الوحدات القابلة للاختبار ، ثم السلوكيات المركبة بينها ، يمكن للمرء أن يبني اختبارات شاملة للتطبيقات المعقدة.

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

أثناء التطوير ، يجوز لمطور البرامج ترميز المعايير ، أو النتائج المعروفة بأنها جيدة ، في الاختبار للتحقق من صحة الوحدة. أثناء تنفيذ حالة الاختبار ، تقوم أطر العمل بتسجيل الاختبارات التي تفشل في أي معيار والإبلاغ عنها في ملخص. لهذا ، فإن النهج الأكثر استخدامًا هو الاختبار - الوظيفة - القيمة المتوقعة.
ويل وارنر - ❰ له مجموعة من الإنجازات والمؤلفات أبرزها ❞ The Case Against Unit Testing in Software Development ❝ الناشرين : ❞ CreateSpace Independent Publishing Platform ❝ ❱
من اختبار الوحدة اختبار او فحص البرمجيات - مكتبة كتب تقنية المعلومات.

نبذة عن الكتاب:
The Case Against Unit Testing in Software Development

2012م - 1445هـ
وصف قصير عن الكتاب :


في برمجة الكمبيوتر ، يعد اختبار الوحدة طريقة اختبار برمجية يتم من خلالها اختبار الوحدات الفردية من التعليمات البرمجية المصدر - مجموعات من وحدة أو أكثر من وحدات برامج الكمبيوتر جنبًا إلى جنب مع بيانات التحكم المرتبطة بها ، وإجراءات الاستخدام ، وإجراءات التشغيل - لتحديد ما إذا كانت مناسبة للاستخدام .
قبل اختبار الوحدة ، كانت أدوات اختبار الالتقاط وإعادة التشغيل هي القاعدة. في عام 1997 ، قام كينت بيك وإريك جاما بتطوير وإصدار JUnit ، وهو إطار اختبار وحدة أصبح شائعًا لدى مطوري Java. تبنت Google الاختبار الآلي في الفترة من 2005 إلى 2006 تقريبًا.
عادةً ما تكون اختبارات الوحدة عبارة عن اختبارات آلية يكتبها ويديرها مطورو البرامج للتأكد من أن قسمًا من التطبيق (يُعرف باسم "الوحدة") يلبي تصميمه ويتصرف على النحو المنشود. في البرمجة الإجرائية ، يمكن أن تكون الوحدة وحدة كاملة ، ولكنها أكثر شيوعًا هي وظيفة أو إجراء فردي. في البرمجة الموجهة للكائنات ، غالبًا ما تكون الوحدة واجهة كاملة ، مثل فئة أو طريقة فردية. من خلال كتابة الاختبارات أولاً لأصغر الوحدات القابلة للاختبار ، ثم السلوكيات المركبة بينها ، يمكن للمرء أن يبني اختبارات شاملة للتطبيقات المعقدة.

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

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

تعليقات القرّاء:

وصف منسّق للكتاب :

 

في برمجة الكمبيوتر ، يعد اختبار الوحدة طريقة اختبار برمجية يتم من خلالها اختبار الوحدات الفردية من التعليمات البرمجية المصدر - مجموعات من وحدة أو أكثر من وحدات برامج الكمبيوتر جنبًا إلى جنب مع بيانات التحكم المرتبطة بها ، وإجراءات الاستخدام ، وإجراءات التشغيل - لتحديد ما إذا كانت مناسبة للاستخدام .
قبل اختبار الوحدة ، كانت أدوات اختبار الالتقاط وإعادة التشغيل هي القاعدة. في عام 1997 ، قام كينت بيك وإريك جاما بتطوير وإصدار JUnit ، وهو إطار اختبار وحدة أصبح شائعًا لدى مطوري Java. [2] تبنت Google الاختبار الآلي في الفترة من 2005 إلى 2006 تقريبًا.


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

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

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

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

 

مزايا


الهدف من اختبار الوحدة هو عزل كل جزء من البرنامج وإظهار صحة الأجزاء الفردية. [1] يوفر اختبار الوحدة عقدًا صارمًا ومكتوبًا يجب أن تفي به قطعة الكود. نتيجة لذلك ، فإنه يوفر العديد من الفوائد.

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

في التطوير القائم على الاختبار (TDD) ، والذي يستخدم بشكل متكرر في كل من البرمجة المتطرفة و scrum ، يتم إنشاء اختبارات الوحدة قبل كتابة الكود نفسه. عندما تجتاز الاختبارات ، يعتبر هذا الرمز مكتملاً. يتم تشغيل نفس اختبارات الوحدة مقابل هذه الوظيفة بشكل متكرر حيث يتم تطوير قاعدة التعليمات البرمجية الأكبر إما عند تغيير الكود أو عبر عملية آلية مع الإنشاء. إذا فشلت اختبارات الوحدة ، فسيتم اعتبارها خطأً سواء في الكود الذي تم تغييره أو في الاختبارات نفسها. تسمح اختبارات الوحدة بعد ذلك بتتبع موقع الخطأ أو الفشل بسهولة. نظرًا لأن اختبارات الوحدة تنبه فريق التطوير بالمشكلة قبل تسليم الكود إلى المختبرين أو العملاء ، يتم اكتشاف المشكلات المحتملة في وقت مبكر من عملية التطوير.

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

قد يقلل اختبار الوحدة من عدم اليقين في الوحدات نفسها ويمكن استخدامه في نهج أسلوب الاختبار التصاعدي. من خلال اختبار أجزاء البرنامج أولاً ثم اختبار مجموع أجزائه ، يصبح اختبار التكامل أسهل بكثير. [بحاجة لمصدر]

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

تجسد حالات اختبار الوحدة الخصائص التي تعتبر حاسمة لنجاح الوحدة.



سنة النشر : 2012م / 1433هـ .
نوع الكتاب : pdf.
عداد القراءة: عدد قراءة The Case Against Unit Testing in Software Development

اذا اعجبك الكتاب فضلاً اضغط على أعجبني
و يمكنك تحميله من هنا:

تحميل The Case Against Unit Testing in Software Development
شكرًا لمساهمتكم

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

برنامج تشغيل ملفات pdfقبل تحميل الكتاب ..
يجب ان يتوفر لديكم برنامج تشغيل وقراءة ملفات pdf
يمكن تحميلة من هنا 'http://get.adobe.com/reader/'

المؤلف:
ويل وارنر - Wil Warner

كتب ويل وارنر ❰ له مجموعة من الإنجازات والمؤلفات أبرزها ❞ The Case Against Unit Testing in Software Development ❝ الناشرين : ❞ CreateSpace Independent Publishing Platform ❝ ❱. المزيد..

كتب ويل وارنر
الناشر:
CreateSpace Independent Publishing Platform
كتب CreateSpace Independent Publishing Platform ❰ ناشرين لمجموعة من المؤلفات أبرزها ❞ The Hacker Playbook 2 ❝ ❞ Blue Team Field Manual (BTFM) (RTFM) ❝ ❞ SharePoint Online from Scratch ❝ ❞ Control Your Day ❝ ❞ Working Effectively with Unit Tests ❝ ❞ Dart Scripting Made Stupid Simple ❝ ❞ Microsoft Office Specialist MOS Certification on Microsoft Office 2013 MS Word, Excel & PowerPoint 2013 ExamFOCUS Study Notes ❝ ❞ Basic Security Testing With Kali Linux, Third Edition ❝ ❞ Kotlin for Android Developers ❝ ❞ Develop It Yourself: SharePoint 2016 Out Of The Box Features ❝ ومن أبرز المؤلفين : ❞ كاتب غير معروف ❝ ❞ آلان وايت ❝ ❞ بيتر كيم ❝ ❞ دانيال دبليو ديتيرلي ❝ ❞ جيراردوس بلوكديك ❝ ❞ بيتر كالمستروم، كيت كالمستروم ❝ ❞ جيم ماكولين ❝ ❞ فوزية بيجوم، جوردان كوفمان ❝ ❞ جاي فيلدز ❝ ❞ دينيش غوتام ❝ ❞ تشارلز سيفيرانس ❝ ❞ antonioleiva ❝ ❞ ويل وارنر ❝ ❞ نافين بلاني ❝ ❱.المزيد.. كتب CreateSpace Independent Publishing Platform