مرحبًا بعودتك.
دعنا نواصل اختبارات الوحدة الخاصة بنا.
الآن ، أحد الأشياء التي لاحظتها هنا هو أنه عند النظر إلى التوثيق ، لدينا بالفعل
تأكيد هو المثال.
لذلك يمكننا في الواقع بدلاً من قول التأكيد على أنه صحيح ، ما عليك سوى استخدام التأكيد كمثال ، والذي
نقدمه A و B ، مرة أخرى ، كل طرق التأكيد هذه ، ليس هناك طريقة صحيحة ، يمكنك استخدام أيهما تريد
كأداة لتحسين الكود الخاص بك .
لذا في حالتي ، دعنا نغير هذا للتأكيد كمثال وإصلاح هذا.
مثله.
لذلك مجرد نظافة صغيرة.
دعونا نرى إذا كان هذا يعمل.
حسنا.
كل شيء لا يزال على ما يرام.
حسنًا ، دعنا نحاول كسر الكود مرة أخرى.
لذلك كل شيء يبدو على ما يرام.
لكن ماذا لو فعلنا شيئًا مختلفًا؟
ماذا لو فعلنا؟
لنفترض ، أضف اختبارًا آخر وسنقول اختبار.
افعل الأشياء أيضًا.
عادةً ما تريد تسمية هذه الوظائف بشكل أفضل كثيرًا ، لذا فهي أكثر وصفية.
لكن في حالتنا ، هذا جيد ، فقط حتى نتمكن من رؤية كيفية عملهم هذه المرة.
دعونا نختبر ذاكرة الوصول العشوائي سوف تساوي.
ماذا عن لا شيء؟
الآن إذا قمت بتشغيل هذا ، فلنقم بتشغيل هذا الرمز مرة أخرى.
وبالمناسبة ، قد تلاحظون هنا كيف أنسخ الكود في الاختبار وقد تعتقدون ، حسنًا ، هل يمكننا أن
نجعل هذا الأمر أكثر بساطة؟
ولا نكرر أنفسنا.
ويمكنك فعل ذلك تمامًا وتسهيل الأمور كثيرًا.
ولكن عندما يتعلق الأمر بالاختبارات ، لأنها لا تدخل في الإنتاج وهذا فقط لأغراض
التطوير ، فأنت تريد حقًا إجراء اختبارات يسهل قراءتها حتى يفهم الآخرون اختباراتك.
لأنه عندما يتعلق الأمر بالاختبار ، فإن سهولة القراءة مهمة حقًا.
نحن لا نهتم كثيرًا بعدم تكرار أنفسنا وجعل الكود الخاص بنا فعالًا ولطيفًا وصغيرًا.
لذلك أحب كتابة الاختبارات الوصفية حقًا ، والواضحة حقًا.
حسنًا هنا ، دعنا نقول الذات ، ضع نقطة ، أكد المساواة و.
حسنًا ، ماذا يجب أن يكون هذا؟
حسنًا ، في هذه الحالة ، أتوقع خطأ في القيمة.
لذلك دعونا نفعل هذا.
أتوقع أن تكون النتيجة خطأ في القيمة.
سأقوم بحفظ الاختبار وتشغيله.
حسنًا ، أحصل على هواء.
تقول هذا خطأ نوع في وسيطة.
يجب أن يكون سلسلة.
وأنا أعطيها غير من النوع.
حسنا.
لذا فإن هذا لا يتعامل معه بشكل صحيح لأنه لا يعمل مع int نحصل على خطأ في النوع.
فكيف يمكننا إصلاح هذا؟
كيف يمكننا تعديله في حال حصلنا على نوع غير في المعلمة؟
حسنًا ، أولاً ، دعنا نعطيه معلمة افتراضية.
لنفترض أن المعلمة الافتراضية هي صفر.
إذا قمت بتشغيل هذا.
ثانية.
مازلت اقع في الخطأ نفسه.
حسنًا ، ما زلنا لم نصلحها.
يجب أن تكون الحجة صارمة.
كائن ثنائي أو رقم ، وليس غير نوع.
لذلك ما زلنا لا نتحقق من النوع غير.
شيء آخر يمكننا القيام به هو أن نقول.
إذا كان الرقم.
لذا فإننا نتحقق مما إذا كانت لدينا قيمة العدد.
لأن تذكر ، سيتحول هذا إلى القيمة الافتراضية إذا كان يحتوي على أي نوع من الأرقام أو جيدًا ، أي قيمة ،
ولكن إذا لم يكن نوعًا ، فسوف يتحول إلى خطأ.
إذاً هنا ، إذا كان الرقم يمكننا القول إعادة هذا.
آخر.
خلاف ذلك ، سوف نعود.
لو سمحت.
أدخل رقم.
سأقول هذا وسأغير هذا الآن لأننا الآن يجب أن نتوقع من فضلك إدخال رقم في الاختبار
الخاص بي وسأقول تأكيد المساواة.
تلك النتيجة.
سوف يكون.
الرجاء إدخال الرقم.
إذا أجريت الاختبار الخاص بي الآن ، فلنجح في مسح هذا.
عفوا.
يبدو أنني أجريت اختبارين في 0 ثانية ، لكن لدينا ثلاثة اختبارات وهذا بسبب.
ترى هنا أنني قمت بتسميتي بنفس الاسم.
تذكر ، إذا سميت الشيء نفسه ، حسنًا ، فسيتم تشغيل واحد منهم فقط.
لذا تأكد من أن جميع أسماء الاختبار فريدة.
لذا سأقوم بتشغيل هذا.
حسنا.
تم إجراء ثلاثة اختبارات وكل شيء يعمل بشكل جيد.
رائع جدا.
يمكنك أن ترى هنا كيف انتقلنا من وظيفة بسيطة للغاية وبدأنا في اكتشاف
هذه الأخطاء وبدأنا ندرك كيف كانت وظيفتنا مبسطة للغاية إذا تلقينا مدخلات خاطئة.
يحب.
سلسلة أو لا نوع.
حسنًا ، بمجرد أن فعلنا ذلك ، فشلت وظيفتنا.
لذلك باستخدام الاختبارات وكاختبار وكسر الأشياء ، تمكنت من تحسين هذه الوظيفة.
لذلك فهو أكثر متانة بحيث يعمل الآن بشكل أفضل في الإنتاج.
حق؟
وهذه هي قوة الاختبارات.
يسمح لنا بالتحقق من أي أخطاء قد نكون قد ارتكبناها لأنه ربما لم نفكر في القيام
بشيء كهذا في البداية.
ولكن من خلال كتابة الاختبارات جنبًا إلى جنب مع الكود الخاص بنا ، تمكنا من تحسين الوظيفة.
الآن ، آخر شيء أريد إضافته.
دعنا فقط نضيف واحدًا آخر خلال الاختبارات ونقول إن هذا يفعل أشياء لما إذا كانت معلمة الاختبار
مجرد سلسلة فارغة؟
يجب أن نحصل عليه.
الرجاء إدخال رقم.
لذلك إذا قمت بتشغيل هذا.
حسنا.
تم اجتياز أربعة اختبارات ، لذلك يبدو أن الكود الخاص بنا يعمل بشكل جيد.
الآن لكي أختم هنا ، أود فقط أن أشير إلى بعض الأشياء.
أنا أتصل هنا في Unit Test Main.
لكن هذا لا علاقة له بالواقع.
ملف.
الذي كتبناه وهو الملف الرئيسي.
إذا دعنا نقول أنني أعدت تسمية هذا ، فلننتقل إلى سطح المكتب.
وأقول ، أريد تغيير هذا إلى.
سيناريو ، فطيرة نقطية.
دعنا الآن نفتح حالتي هذه بنص سامي.
لنعد هنا.
لذلك ترى هنا أن pi الرئيسي على ما يرام ، لم يعد موجودًا بعد الآن.
إنه يطلب مني الحفظ.
إذن هذا ملف مختلف تمامًا.
الآن ، إذا قمت بعمل برنامج نصي هنا وقمت ببساطة بتغيير جميع الحالات إلى برنامج نصي.
إذا حفظت هذا وركضت الآن.
لا يزال هذا اختبار الوحدة يعمل على Main يقول ببساطة ، مرحبًا ، فقط قم بتشغيل جميع الاختبارات هنا.
الآن شيء واحد ، وهذه ممارسة شائعة تحدثنا عنها من قبل ، لأنك تريد أن تقول تشغيل هذا الملف
إذا كان هذا هو الملف الرئيسي قيد التشغيل ، لأننا لا نريد حقًا استيراد اختبار main أو أي شيء من هذا
القبيل في ملفات أخرى.
هذه ملفات فردية يجب تشغيلها فقط عندما نجري اختباراتنا.
لذا يمكنني أن أقول فقط إذا كان تسطير أسفل السطر ، يجب أن يكون الاسم.
يساوي.
تسطير أسفل السطر الرئيسي.
ثم قم بتشغيل هذا الجزء من التعليمات البرمجية.
حتى الآن إذا حفظت هذا وركضت.
ها أنت ذا.
كل شيء لا يزال يعمل.
لكنني الآن أتأكد من أن هذا ملف اختبار.
وسأقوم بتشغيل هذا الكود فقط إذا كان الملف قيد التشغيل ، إذا كان الملف الرئيسي قيد التشغيل.
لذلك فهذه طريقة قياسية لإجراء اختبار الوحدة الخاص بك باستخدام وحدة اختبار الوحدة.
لنأخذ استراحة ونتحدث قليلاً عن الاختبارات في الفيديو التالي.