سؤال

أستخدم قارئ التدفق لاستيراد بعض البيانات وفي الوقت الحالي أقوم بتشفير ملف عينة صغير في الاختبار للقيام بهذه المهمة.

هل من المعقول استخدام Mock Objects مع هذا وكيف؟

هل كانت مفيدة؟

المحلول

لا أرى أي نقاط للسخرية من StreamReader إلا إذا كنت تقوم بإنشاء فئة مشتقة من StreamReader.إذا كنت بحاجة إلى تقديم إدخال اختباري عبر StreamReader، فما عليك سوى قراءة بعض البيانات المحددة مسبقًا من أي مصدر مناسب.

نصائح أخرى

StreamReader هي فئة محددة، لذا فإن العديد من أنظمة السخرية لن تسمح لك بالسخرية منها.المعزل TypeMock سوف، ولكن.

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

عند اختبار التعليمات البرمجية التي تعتمد على التدفقات وقراء الدفق وكتاب الدفق، عادةً ما أستخدم كائن Memorystream للاختبار.لا حاجة لإطار ساخر هنا.

يمكنك استخدام طريقة المصنع لإرجاع TextReader الذي قد يكون كائنًا وهميًا أو StreamReader فعليًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top