تمرين - استخدم بيانات الاختبار لعرض مشكلات المنطق في تطبيق وحدة تحكم C#
MakeChange الأسلوب قادر على معالجة المعاملات المحاكية بنجاح عند استخدام testData الصفيف. ومع ذلك، يتم كشف مشكلات المنطق عند محاكاة المعاملات باستخدام مجموعة بيانات أكبر من العناصر التي يتم تسعيرها عشوائيا. توضح هذه المشكلة أهمية اختبار تطبيقاتك بدقة.
مواصفات
في تمرين التحدي هذا، تحتاج إلى تكوين المتغيرات المستخدمة لمحاكاة المعاملات والتحقق من أن تقرير المعاملات يتضمن التناقضات المتوقعة.
تنطبق المتطلبات التالية على المعاملات المحاكاة:
- تحاكي عبارات المستوى الأعلى المعاملات باستخدام تكاليف العنصر التي تم إنشاؤها عشوائيا.
- تنشئ عبارات المستوى الأعلى قيما عشوائية ل
itemCostفي النطاق2 - 49. - تحاكي عبارات المستوى الأعلى 100 معاملة.
يجب أن يتضمن إخراج المعاملة المبلغ عنها ما يلي:
- سجل 100 معاملة تمت محاولة تنفيذها.
- مثيلات رسالة تفيد: "تعذر إجراء المعاملة: InvalidOperationException: لا تتوفر أموال كافية لإكمال المعاملة."
- مثيلات رسالة تفيد: "تعذر إجراء معاملة: InvalidOperationException: حتى غير قادر على إجراء تغيير على النقود المقدمة."
- تباين بين القيم المتوقعة التي تم الإبلاغ عنها.
التحقق من عملك
للتحقق من أن التطبيق الخاص بك ينتج النتائج المتوقعة عند تنفيذ متطلبات المحاكاة المحددة، أكمل الخطوات التالية:
تأكد من فتح مجلد ChallengeProject في Visual Studio Code.
في طريقة عرض EXPLORER، قم بتوسيع المجلدين ChallengeProjectوStarter .
يحتوي مجلد Starter على نموذج التطبيق لوحدة المشروع الإرشادية هذه.
افتح ملف Program.cs في محرر التعليمات البرمجية Visual Studio.
تكوين بيئة تتبع الأخطاء وتكوين التشغيل.
تكوين التطبيق لاستخدام
testDataالصفيف للمعاملات المحاكاة (useTestData = true).تشغيل التطبيق في جلسة تصحيح الأخطاء.
تحقق من أن القيم "تم الإبلاغ عنها" و"المتوقعة" حتى تكون متساوية في تقرير المعاملات الذي تم إنشاؤه بواسطة التطبيق.
تكوين متغيرات التطبيق لتلبية متطلبات المحاكاة في قسم المواصفات .
تشغيل التطبيق في جلسة تصحيح الأخطاء.
تحقق من أن التطبيق الخاص بك يحقق متطلبات الإخراج التالية:
يتضمن تقرير المعاملات سجلا ب 100 معاملة تمت محاولة تنفيذها.
يتضمن تقرير المعاملات تعارضا بين القيم المتوقعة التي تم الإبلاغ عنها.
يتضمن تقرير المعاملات مثيلات الرسائل التالية:
Could not make transaction: InvalidOperationException: Not enough money provided to complete the transaction.Could not make transaction: InvalidOperationException: The till is unable to make change for the cash provided.
بمجرد التحقق من صحة نتائج هذا التمرين، انتقل إلى التمرين التالي في هذا التحدي.